95
107
118
130
142
154
165
176
186
194
202
208
213
216
218
218
217
213
209
203
196
188
178
168
156
144
132
120
108
96
84
75
66
58
51
45
42
38
38
39
42
46
52
59
67
76
87
98
111
122
133
145
158
170
180
189
198
205
210
214
218
219
219
216
213
208
201
193
185
175
163
151
139
127
115
103
91
80
70
62
55
48
43
40
38
39
40
44
48
54
61
67
82
91
99
117
127
137
151
163
175
185
192
200
208
211
215
219
218
217
216
211
205
198
190
181
171
159
147
135
124
111
100
88
77
67
60
53
47
42
39
38
39
41
45
50
56
63
73
83
94
106
118
129
141
154
165
176
186
194
201
208
214
218
220
220
217
214
209
203
196
188
178
168
156
144
131
120
107
95
83
73
65
57
50
45
41
39
38
39
42
46
52
59
66
76
87
98
111
122
133
145
157
169
180
190
198
205
211
215
218
220
218
216
212
207
200
192
185
175
163
151
139
127
115
103
91
80
70
62
54
48
43
40
38
39
40
43
48
55
62
70
80
90
103
114
126
138
150
162
173
183
192
200
206
212
216
218
218
218
215
210
205
198
191
181
171
159
148
135
124
111
100
88
77
68
60
52
47
42
39
38
39
41
45
50
56
63
72
82
94
106
118
129
142
154
165
176
187
195
202
209
213
217
219
219
217
214
209
203
196
188
178
167
156
144
131
120
108
96
84
74
65
57
50
45
40
39
38
39
42
46
52
59
66
76
86
98
110
122
133
146
158
169
179
189
196
204
210
215
218
219
218
216
212
207
201
192
184
174
164
151
140
127
116
104
92
81
71
63
55
48
44
40
39
38
40
43
47
55
62
69
80
90
101
113
125
138
150
161
172
183
192
200
206
211
215
218
219
218
215
211
205
199
192
182
171
159
147
136
124
111
99
88
77
67
60
53
47
42
39
37
38
41
46
50
56
63
73
84
95
106
118
130
142
154
166
177
187
194
202
209
213
217
219
219
217
213
209
202
195
188
178
167
155
144
131
120
107
96
84
74
64
57
50
44
40
38
38
39
42
46
52
59
66
76
87
99
110
123
133
146
158
169
180
190
197
203
211
216
219
220
219
218
214
208
201
193
185
175
163
151
138
127
114
101
90
79
69
62
54
48
44
40
38
38
39
43
47
54
62
70
80
90
100
117
125
136
152
162
174
184
192
202
208
210
216
219
218
218
216
210
204
199
190
181
171
160
147
136
124
111
100
88
77
67
60
52
46
42
39
38
39
41
45
50
56
63
72
83
94
106
118
129
141
153
165
176
186
194
201
208
213
217
219
219
217
214
210
204
196
189
179
168
156
144
132
121
108
97
85
74
65
57
50
45
41
38
38
39
42
46
51
58
66
75
86
98
109
122
133
145
157
169
180
189
197
205
211
215
218
220
219
217
214
208
201
193
184
174
163
151
139
127
115
103
92
81
71
63
55
48
44
40
38
38
40
43
47
54
61
69
79
90
102
114
126
137
149
161
172
183
192
199
206
212
216
218
219
218
216
211
206
199
192
182
171
160
148
135
124
111
100
88
78
68
61
53
47
43
39
38
39
40
44
50
57
63
72
83
94
106
118
129
141
153
165
176
187
194
202
208
213
217
218
219
217
214
209
204
196
188
178
167
156
144
132
120
108
97
85
75
65
58
51
45
41
39
38
39
42
46
52
59
66
76
86
98
110
122
133
145
157
169
179
189
197
204
210
214
217
219
218
216
212
208
201
193
185
175
164
152
140
127
117
104
92
82
71
63
56
49
44
40
39
38
40
43
48
54
61
69
79
90
101
113
125
137
149
161
172
182
192
199
206
211
216
218
219
218
215
211
206
198
192
182
172
160
148
136
124
112
100
88
78
68
61
53
47
43
40
38
38
40
44
49
56
63
72
82
93
105
117
129
141
154
165
175
186
194
202
208
212
217
219
219
217
215
210
204
196
188
179
169
157
143
131
121
108
95
84
73
63
56
51
45
41
38
38
39
42
46
51
58
66
76
86
98
110
122
133
145
157
169
180
189
196
204
212
215
217
218
220
216
210
210
201
192
185
175
166
152
138
128
117
103
92
82
71
63
57
49
44
41
39
39
40
43
47
54
62
69
79
89
101
113
125
136
149
161
172
183
192
199
206
212
215
218
218
218
215
211
205
198
191
181
171
159
148
136
124
112
100
89
78
68
60
53
47
43
39
38
38
41
44
49
56
63
73
83
94
106
118
128
141
154
165
176
186
193
201
210
213
218
220
218
218
214
209
203
196
188
179
168
157
144
132
120
108
96
84
74
63
56
49
44
40
39
38
39
42
46
52
59
66
75
86
98
109
121
132
144
157
169
180
190
197
205
211
216
218
219
219
217
214
208
202
193
185
174
163
151
139
127
115
103
92
81
71
63
55
48
44
40
38
38
39
43
47
54
61
69
79
90
102
115
126
138
150
162
173
183
192
199
205
211
215
217
218
217
215
210
205
198
192
182
171
160
148
135
124
112
100
89
77
68
60
53
47
43
40
38
39
41
45
50
57
63
72
83
94
105
117
129
141
153
164
176
186
194
202
208
213
216
219
219
217
214
209
204
196
188
178
168
156
144
132
120
108
96
84
74
65
57
51
45
41
38
38
39
42
46
51
59
66
76
86
98
110
122
133
145
157
169
180
189
198
205
211
215
219
219
219
217
213
208
201
193
184
175
164
151
140
127
116
104
92
81
71
63
55
49
44
40
38
38
40
43
48
54
61
70
79
90
102
114
125
137
149
161
172
182
192
199
207
212
216
219
219
218
216
212
206
199
192
182
172
160
148
136
124
112
100
89
78
68
61
53
47
42
39
38
38
40
44
49
56
63
72
82
93
105
117
129
141
153
166
176
186
194
202
209
213
218
219
220
218
215
210
204
196
189
179
169
156
144
132
120
108
97
85
75
65
58
51
45
41
39
38
39
42
46
51
59
66
76
86
97
110
121
133
145
157
168
179
188
196
204
210
214
217
219
219
217
213
208
201
193
185
175
164
153
141
128
117
105
93
81
71
63
56
49
44
41
39
39
39
44
48
55
61
68
78
90
102
113
125
137
149
161
173
183
192
199
207
212
216
218
218
218
216
211
206
199
192
182
171
160
148
136
124
112
100
89
79
69
60
53
46
43
39
38
38
40
44
50
57
65
72
80
96
108
114
129
142
152
165
175
186
196
201
208
214
217
218
219
218
214
210
204
196
188
179
168
156
144
132
120
108
96
84
74
65
58
50
45
41
38
38
39
42
46
52
59
66
76
86
98
110
121
133
145
157
169
179
189
196
204
210
214
217
219
219
216
213
208
201
193
185
175
164
152
140
127
116
104
92
82
71
63
55
49
44
40
39
38
40
43
47
54
61
68
79
90
101
113
125
137
149
161
173
183
192
200
206
211
216
218
219
218
216
212
206
199
192
182
171
161
148
136
124
112
99
88
77
68
60
52
47
42
39
38
38
41
45
50
56
63
72
83
94
106
118
129
141
153
164
176
186
194
202
209
213
217
219
219
217
214
209
204
196
189
179
169
157
144
132
120
108
96
85
74
65
57
51
44
41
38
37
38
41
45
51
59
66
75
86
97
109
121
133
145
157
168
179
189
196
204
211
215
218
220
220
218
214
209
203
195
186
176
165
153
140
127
115
103
91
80
70
62
55
48
43
40
38
37
39
42
47
53
61
68
78
89
101
114
125
137
150
162
173
184
192
199
206
211
216
218
219
217
215
211
205
198
192
182
171
160
148
136
125
113
100
89
78
68
61
54
48
43
40
40
40
41
44
50
57
63
72
82
93
104
116
129
141
152
164
175
185
193
201
207
212
216
218
218
217
214
209
204
196
189
179
169
157
145
132
123
109
95
86
76
63
57
52
46
40
39
38
40
41
44
52
58
65
75
86
97
109
122
132
144
157
168
179
189
197
204
211
215
218
219
219
217
214
208
201
194
185
175
164
152
140
128
116
104
92
81
71
63
55
49
44
40
38
38
40
43
47
54
62
69
79
90
101
114
126
137
149
161
172
182
192
198
205
210
215
218
219
218
215
212
205
199
192
182
171
161
148
136
125
113
101
89
79
69
61
53
47
43
40
38
39
41
44
50
56
63
72
82
94
105
117
128
140
152
164
174
184
195
202
208
215
216
218
220
216
213
211
204
197
189
180
169
157
145
133
120
107
97
85
73
64
58
50
45
42
39
38
39
42
46
51
58
66
75
85
96
108
120
133
145
157
169
180
190
197
204
210
214
217
219
218
216
213
208
202
194
187
176
165
153
140
127
116
103
92
80
71
63
55
49
44
40
38
38
40
43
47
54
61
69
78
89
100
112
125
136
148
160
172
182
192
199
205
211
216
218
219
218
215
211
206
199
192
182
172
160
149
136
125
113
101
89
78
68
60
53
47
43
39
38
38
40
44
49
56
63
72
82
93
105
117
128
140
152
164
176
186
194
201
208
213
217
219
219
217
214
210
204
196
188
179
168
156
144
132
120
108
96
85
74
65
58
51
45
41
39
38
39
42
45
51
58
65
75
86
97
109
121
132
145
156
168
179
188
196
204
209
214
218
219
219
217
213
208
201
193
185
175
164
152
140
128
116
105
93
82
71
63
56
50
44
41
38
38
40
43
48
54
61
69
78
89
101
113
125
136
149
161
171
182
192
198
205
211
216
218
219
218
216
211
206
199
192
182
172
161
149
137
125
113
100
89
78
68
60
53
47
43
40
38
39
41
44
49
56
63
72
82
93
105
117
128
140
153
165
176
186
194
202
208
214
217
219
219
217
214
210
204
196
188
179
168
157
145
133
122
109
97
85
75
66
58
51
45
41
38
38
38
41
45
51
58
66
75
85
97
108
121
132
144
156
168
179
189
196
204
210
214
218
219
219
217
213
208
202
194
186
176
165
153
141
129
117
105
93
82
71
63
55
48
43
39
39
38
40
43
47
53
61
68
78
89
100
112
125
136
148
161
172
182
192
199
207
212
217
219
220
219
216
212
206
199
192
182
171
160
148
136
124
112
100
89
79
69
62
54
47
43
39
38
38
40
44
49
56
63
72
82
93
105
116
129
141
152
165
176
186
193
201
208
212
216
217
219
217
214
209
204
196
189
179
168
157
145
133
121
109
97
86
76
66
58
51
46
42
39
38
39
41
45
51
59
65
72
85
99
106
119
134
144
157
167
178
191
196
203
210
215
218
221
219
216
213
210
203
194
186
175
165
153
141
128
117
104
93
82
71
63
55
49
43
40
38
38
39
42
47
53
60
68
78
89
100
113
125
137
148
160
171
183
192
199
206
212
216
219
219
218
215
211
206
199
192
182
172
161
149
137
125
113
101
89
79
68
61
54
47
43
39
38
38
41
44
49
56
63
71
82
93
104
117
128
140
152
164
175
185
193
201
208
212
216
218
219
217
215
210
204
196
189
179
168
157
145
133
121
109
97
86
75
66
58
51
46
42
39
38
38
41
45
51
58
65
75
85
97
109
121
132
145
157
169
179
189
196
204
209
214
217
219
218
217
213
208
202
194
186
176
165
153
141
128
117
104
93
82
71
63
56
49
44
41
39
39
40
43
47
54
61
68
79
89
101
113
125
136
148
160
171
182
192
199
205
212
216
218
218
218
216
211
206
199
192
182
172
161
149
137
125
113
100
89
78
68
60
53
47
42
39
38
39
41
45
49
57
63
71
80
92
106
116
127
142
154
163
176
185
195
201
206
213
217
219
219
218
214
210
205
197
188
179
168
157
145
132
121
109
97
86
75
66
58
51
46
42
39
38
39
42
46
52
58
66
75
85
97
109
121
132
144
156
168
178
188
195
203
209
214
218
219
219
217
214
209
202
195
187
176
165
153
141
129
117
105
93
82
71
63
56
50
44
41
39
38
39
42
47
53
60
68
78
89
100
112
124
136
148
161
171
183
192
198
206
211
216
218
219
218
216
212
206
199
192
183
172
161
149
137
125
113
100
89
78
68
61
53
47
43
40
38
39
41
45
49
56
63
72
82
93
105
116
128
140
152
164
173
184
196
203
208
215
216
217
219
216
213
210
203
196
189
180
170
157
146
134
121
108
98
86
74
65
59
52
46
43
40
39
40
43
46
51
58
66
75
83
95
105
118
130
143
156
167
179
189
197
204
210
214
218
219
219
216
213
208
202
194
186
176
166
154
142
130
118
105
93
82
72
63
56
49
44
40
38
38
38
41
46
53
60
68
78
89
101
113
126
136
148
160
172
182
192
198
206
211
216
218
219
218
216
212
207
199
192
183
172
161
148
136
124
112
100
88
78
68
61
54
47
42
40
39
39
40
44
50
56
63
72
82
93
105
117
129
141
153
165
176
186
193
201
208
213
217
218
218
217
214
210
203
196
189
180
168
156
144
132
121
109
96
85
75
66
59
51
46
42
39
38
39
41
46
51
58
65
74
84
96
108
120
132
144
156
168
179
188
197
204
210
214
217
219
219
217
213
209
202
194
186
176
165
154
141
129
117
105
93
82
71
63
55
49
43
40
38
38
39
43
47
54
61
69
78
89
101
112
125
136
148
160
172
183
192
199
206
212
216
218
219
218
216
211
206
199
192
182
172
160
149
137
125
113
101
89
79
69
61
54
47
43
39
38
38
40
44
49
56
63
72
81
93
104
116
127
140
152
163
174
185
193
201
208
213
217
219
219
218
216
211
205
197
189
179
168
157
145
133
121
110
98
86
76
66
59
51
46
41
39
37
38
41
45
50
57
65
74
85
96
108
120
132
144
156
168
179
188
196
204
210
214
217
219
219
216
213
208
202
194
186
176
165
153
141
129
117
105
93
82
72
63
56
50
45
41
39
38
40
43
47
53
61
68
79
89
100
112
124
136
148
160
171
182
192
199
205
211
216
218
219
218
216
211
206
199
192
182
173
162
150
137
126
114
102
90
79
69
61
54
47
43
40
38
38
40
43
48
55
63
71
81
93
105
116
127
139
152
163
175
185
193
201
208
213
217
219
219
218
215
210
204
197
189
180
169
158
145
133
122
109
97
86
76
66
58
51
46
41
39
38
39
41
46
51
58
65
75
85
97
108
121
132
144
156
168
179
188
196
203
210
213
217
219
219
217
213
208
202
194
186
176
165
153
141
129
117
105
93
83
72
63
56
49
45
41
38
38
39
43
47
52
61
68
75
92
100
110
126
137
148
160
171
184
192
197
205
211
215
218
220
218
216
213
207
199
192
184
173
162
150
137
126
114
101
89
79
68
61
54
48
43
40
38
38
40
43
48
55
63
71
81
92
104
116
127
139
152
164
175
185
193
201
208
213
216
219
220
218
215
211
205
197
190
180
169
157
145
133
122
109
97
86
75
66
58
51
45
41
39
39
39
42
47
52
59
66
75
86
97
109
120
132
145
156
166
176
187
195
202
209
213
216
218
218
217
213
208
201
194
186
175
165
154
141
128
118
106
93
82
73
63
57
50
45
42
39
39
41
44
48
53
60
67
77
88
99
110
123
134
147
158
171
181
191
198
205
212
216
218
218
217
218
212
204
202
192
183
173
162
152
138
125
115
103
89
78
70
61
53
47
43
39
38
38
40
43
48
55
63
71
81
92
104
116
127
140
152
164
175
185
194
201
208
213
217
219
219
218
215
210
204
196
189
179
168
157
144
133
121
109
97
85
75
65
58
51
46
42
40
39
39
42
46
51
58
66
75
86
97
108
120
132
144
156
167
178
188
196
203
209
214
217
218
218
216
213
208
202
194
187
176
165
153
141
129
117
106
93
82
72
63
56
49
44
41
39
38
39
43
47
53
60
67
78
88
100
111
124
135
148
159
171
182
192
199
205
211
215
218
219
218
216
212
207
199
192
183
173
161
150
137
126
113
101
90
79
69
61
53
47
42
39
38
38
40
44
49
56
63
71
81
93
105
117
128
140
152
164
173
184
196
202
210
214
215
218
219
216
214
210
203
196
189
180
169
157
145
133
120
108
97
85
73
65
58
50
46
43
40
39
40
42
45
51
57
66
75
84
96
106
118
132
144
156
169
180
189
197
204
210
214
217
218
218
216
214
209
203
194
187
178
166
155
142
129
118
105
93
82
72
63
56
49
44
41
39
38
39
42
47
53
60
67
77
87
99
111
124
136
148
160
171
182
192
199
206
211
216
218
219
218
216
212
207
199
192
183
173
161
149
137
125
114
101
89
79
69
61
54
47
43
39
38
38
40
44
49
56
63
71
81
93
104
116
127
139
152
164
175
185
193
201
208
213
217
219
219
218
214
210
204
197
189
179
169
157
146
133
122
110
98
87
76
66
58
52
46
41
39
38
39
41
45
50
58
65
74
84
96
107
120
131
143
155
167
178
188
195
203
209
214
218
219
219
217
214
209
202
194
186
176
165
153
141
129
118
106
94
83
73
63
57
50
45
40
39
38
39
42
47
52
60
68
78
88
100
112
124
135
148
160
171
182
192
199
206
211
215
218
218
218
215
211
206
199
192
183
173
162
149
136
125
114
102
90
79
69
62
55
48
44
41
39
39
41
44
49
56
63
71
81
92
104
116
127
139
152
164
175
185
192
200
207
213
216
218
218
217
214
210
204
196
189
180
170
158
146
133
122
110
98
86
76
66
59
52
46
42
39
38
39
41
45
51
57
64
74
85
96
108
120
132
144
156
168
178
188
196
204
210
215
219
220
219
217
213
208
201
194
185
175
164
153
141
129
118
105
93
82
73
63
56
49
44
40
38
38
39
42
47
53
61
69
78
90
101
113
125
136
148
160
171
181
190
197
205
210
214
217
218
218
216
212
206
200
192
184
173
162
149
137
126
114
102
90
79
70
63
55
49
44
41
39
39
41
44
48
54
62
70
80
90
103
114
127
138
151
163
173
184
192
201
207
212
217
219
220
218
216
211
205
198
190
181
170
158
147
134
123
111
98
87
76
66
58
51
45
41
38
37
38
40
44
50
57
63
74
84
95
107
120
132
144
156
168
179
188
196
204
210
214
218
219
219
217
213
208
202
194
186
176
165
153
141
129
118
105
94
82
72
63
56
50
44
41
39
38
40
44
47
54
61
69
78
88
100
112
124
134
147
159
170
180
190
197
204
210
215
218
218
218
216
212
206
199
192
183
173
161
150
138
127
114
103
91
81
70
62
55
48
43
40
38
38
39
44
49
55
61
69
83
90
102
116
127
139
150
162
176
184
192
200
208
212
217
220
219
218
216
211
205
198
190
180
169
157
145
133
121
109
97
86
75
66
59
51
46
41
39
37
38
41
46
51
57
65
75
84
95
108
120
131
144
157
168
178
188
196
203
210
214
217
218
218
216
213
208
201
194
186
176
165
153
141
129
117
106
94
82
71
63
58
50
43
43
40
38
40
43
49
53
60
68
78
88
99
112
123
134
147
159
170
181
190
198
205
210
214
218
219
218
216
212
207
200
192
184
173
163
150
138
127
114
102
90
79
69
61
54
47
43
39
38
38
39
43
48
55
63
71
81
92
104
116
127
139
151
164
175
185
193
201
208
214
217
219
219
219
216
211
204
197
190
180
169
158
146
133
122
110
98
86
76
66
59
51
46
41
39
38
38
41
45
52
58
63
74
85
97
108
120
132
144
156
167
178
188
195
203
209
214
217
219
219
217
213
208
202
194
187
177
166
154
141
130
118
105
94
83
73
63
56
49
45
42
39
38
40
43
47
53
60
68
77
88
99
111
124
135
147
159
170
181
191
198
206
211
215
218
219
218
216
213
207
200
192
184
173
163
150
138
126
115
102
90
79
69
62
54
47
43
39
38
38
40
43
48
55
63
71
81
91
103
115
127
139
152
162
171
186
196
203
211
213
215
219
218
216
215
210
204
198
191
181
171
158
147
133
121
110
98
85
74
66
58
51
46
43
39
39
40
42
45
51
57
66
74
83
94
104
119
131
144
156
168
179
189
196
203
209
213
217
218
219
217
215
210
203
196
188
178
167
155
143
130
118
106
94
82
72
63
56
50
45
41
39
38
39
42
46
52
59
66
76
86
98
111
123
134
147
159
171
181
192
198
206
211
216
218
219
219
216
212
207
200
192
182
172
161
149
137
126
114
101
90
79
69
62
54
48
43
39
38
39
40
44
49
55
63
71
81
92
104
116
128
140
152
164
174
184
192
200
207
212
215
217
218
217
214
209
203
196
189
179
169
157
145
134
122
110
98
87
76
67
59
52
46
42
40
39
39
41
46
51
58
64
74
84
95
107
119
131
142
155
166
177
187
195
203
209
214
217
219
219
217
214
209
203
195
187
177
166
155
142
130
118
106
94
83
73
63
56
49
44
40
38
37
38
41
46
52
59
67
77
88
99
111
123
135
147
159
171
181
192
198
205
211
216
218
219
218
216
212
206
199
192
184
173
162
150
138
127
114
102
90
79
69
62
54
48
43
40
38
38
40
43
48
54
63
70
81
92
103
115
127
139
150
162
173
184
192
200
207
212
216
218
219
218
216
211
205
197
190
181
170
158
146
134
123
111
98
87
76
67
59
52
46
42
39
38
39
41
45
50
57
63
73
84
94
107
119
130
143
155
167
178
188
195
203
209
213
217
219
218
217
214
209
203
195
187
177
166
154
142
130
118
106
94
83
72
63
56
49
44
41
38
38
39
42
47
53
60
67
77
88
99
111
123
135
147
159
170
181
190
198
204
210
216
219
220
218
216
212
208
200
192
183
173
162
150
138
126
114
102
90
80
70
61
54
47
43
39
38
38
39
43
48
55
63
70
81
91
103
116
128
140
151
162
174
184
193
200
207
212
216
218
219
218
215
211
204
197
190
180
170
158
146
134
122
110
98
87
76
67
59
52
47
42
39
38
39
41
45
51
57
65
73
84
95
107
119
131
143
155
167
177
187
195
203
208
213
217
219
219
217
214
209
203
195
187
176
166
154
142
129
118
106
94
83
73
63
57
50
45
41
39
38
39
42
47
52
59
67
77
88
99
111
124
135
147
159
170
181
190
198
205
211
215
218
219
218
216
212
207
200
192
184
174
163
150
138
126
114
102
90
79
70
61
54
47
43
40
38
39
40
44
48
55
63
71
80
91
103
116
127
138
151
162
173
184
192
200
207
213
216
219
219
217
215
210
204
197
189
180
170
158
147
134
123
111
99
87
76
67
60
52
47
42
39
38
38
41
44
50
57
63
73
84
93
109
120
127
144
156
165
174
189
196
200
209
214
219
218
218
220
215
208
204
196
187
177
167
154
142
130
118
107
94
84
74
64
57
50
45
41
39
38
39
42
46
52
59
66
76
87
98
111
123
135
147
159
170
180
190
197
204
210
214
218
218
218
216
212
207
200
193
184
174
163
151
139
127
115
103
91
80
70
62
54
48
43
40
38
39
41
44
48
55
63
70
80
91
103
114
126
138
150
162
173
183
192
200
207
212
217
219
219
219
216
211
205
198
190
181
170
158
146
134
122
110
98
87
75
66
58
52
46
42
38
38
38
41
45
50
57
63
73
84
96
108
120
132
144
156
167
178
188
196
203
209
214
217
219
219
217
213
209
202
194
186
176
165
154
142
130
118
107
95
83
73
63
57
50
45
41
39
38
39
42
47
52
59
67
77
87
98
111
122
134
146
158
169
180
190
197
205
210
215
218
219
219
217
213
208
201
193
184
174
163
151
138
127
115
102
91
80
70
62
54
48
43
40
38
38
39
43
47
54
62
70
80
91
103
115
127
139
150
159
175
187
195
204
208
211
216
218
217
217
215
210
205
199
192
182
171
159
146
133
122
110
96
84
75
65
58
51
47
42
40
39
39
41
45
50
58
65
72
83
92
105
119
131
144
157
168
180
189
196
203
208
213
216
218
218
217
214
209
203
196
188
178
168
155
143
131
119
106
94
83
73
63
57
51
45
41
39
38
39
42
47
52
59
67
76
87
98
110
122
134
146
158
169
180
190
198
205
211
215
218
219
218
216
212
207
200
192
184
174
163
151
139
127
115
103
91
80
70
62
54
48
43
40
38
38
39
44
48
55
62
70
80
91
103
115
127
138
150
162
174
184
192
200
207
212
216
219
219
218
215
211
205
198
190
181
170
158
147
134
123
111
99
87
76
67
60
52
46
42
39
38
39
41
45
51
57
63
73
84
95
106
119
130
143
155
166
176
187
194
202
208
213
217
218
218
217
214
209
203
195
187
178
167
155
143
131
119
107
95
84
73
63
57
51
45
41
39
38
39
42
47
52
60
67
77
88
99
111
122
134
147
159
170
181
190
198
205
210
215
217
218
218
216
212
206
200
192
184
174
163
151
139
127
115
102
90
80
69
61
54
47
43
39
38
38
40
43
49
55
63
70
80
91
103
115
127
139
151
163
174
184
193
201
208
213
217
219
219
218
215
210
204
197
190
180
169
158
146
134
122
110
98
87
76
67
59
52
46
42
39
38
39
41
45
50
58
65
74
85
96
108
119
131
142
155
166
177
187
195
202
209
213
217
219
218
218
214
209
203
195
187
178
166
155
142
130
118
106
94
83
73
63
57
50
45
41
39
38
39
42
47
52
60
67
77
88
99
111
123
135
147
159
171
181
191
197
205
210
214
217
218
218
216
212
207
200
193
184
174
163
150
139
127
115
102
91
79
70
62
54
48
43
40
38
39
41
44
49
55
63
71
81
92
103
115
127
138
149
162
173
183
192
200
207
212
216
219
219
218
215
210
205
197
190
181
171
158
147
135
124
112
100
88
78
68
60
53
46
42
39
38
38
40
44
49
56
63
72
83
94
106
118
130
142
154
166
177
187
195
203
209
214
218
220
219
218
215
210
204
196
188
178
167
155
143
130
119
107
94
83
73
63
57
50
44
40
38
38
39
42
47
52
60
67
77
88
99
111
124
134
147
158
169
180
189
197
204
210
214
218
219
218
216
212
207
200
192
184
173
162
150
139
127
114
103
92
80
70
63
56
48
44
41
39
39
40
44
49
55
62
70
80
91
102
115
127
139
151
162
173
184
192
199
207
211
216
218
218
217
214
213
205
196
192
182
169
160
147
136
123
110
99
88
76
66
60
52
47
43
40
38
39
41
45
50
57
63
73
83
94
107
119
130
143
155
166
177
187
195
203
209
214
217
219
218
217
214
208
203
195
187
177
167
155
143
130
119
107
95
83
73
63
57
51
45
41
38
38
39
42
47
52
60
67
77
87
99
110
123
134
146
158
169
180
190
197
205
211
213
221
219
216
218
213
208
200
192
186
174
162
152
140
126
114
103
91
80
71
62
54
48
44
40
38
38
39
43
47
54
62
70
79
91
102
115
127
138
151
163
174
184
192
199
207
212
216
219
219
218
215
211
205
198
191
181
170
158
147
134
123
111
99
87
77
67
59
52
46
42
39
38
39
42
44
49
56
63
74
83
94
106
119
131
142
154
166
177
188
195
203
209
214
217
219
219
217
214
209
203
195
188
178
167
155
143
130
119
107
95
83
72
63
57
50
45
40
38
38
39
42
46
51
59
66
76
87
98
110
122
134
146
158
170
181
190
198
206
211
216
218
219
218
217
212
208
201
192
184
174
163
151
139
127
115
103
91
80
70
62
55
48
43
40
39
38
40
43
48
56
63
70
79
90
103
115
127
137
147
160
175
187
194
202
206
211
216
217
217
217
214
210
206
199
192
182
172
160
147
134
124
111
97
86
76
67
59
53
47
42
40
40
39
40
45
50
58
63
72
80
91
105
118
130
143
155
167
178
187
196
202
208
212
216
218
219
218
215
210
203
196
189
179
168
156
143
130
119
106
94
83
73
63
57
50
45
41
39
38
39
42
46
52
58
66
76
87
99
111
123
134
147
158
170
180
190
197
204
210
215
218
219
218
216
212
207
200
192
184
174
163
151
139
127
115
103
91
80
69
62
54
48
43
40
39
39
40
44
49
55
62
70
80
90
102
114
125
137
149
162
173
184
192
201
208
213
217
219
220
218
215
211
205
197
190
181
170
158
147
135
123
111
100
88
77
67
59
52
46
41
39
37
38
40
44
50
57
63
73
84
95
107
119
131
143
155
166
177
187
194
202
208
213
216
218
218
217
214
209
203
195
187
177
167
155
143
131
120
107
96
85
74
65
58
51
45
42
39
39
40
42
46
52
59
66
76
86
98
110
122
133
145
157
169
179
190
196
204
210
214
217
218
218
216
213
208
201
193
185
175
163
152
140
127
116
104
91
80
70
62
54
47
43
39
38
38
39
43
47
54
61
69
80
90
102
114
127
138
150
163
174
184
192
200
208
212
216
219
219
218
215
211
205
198
190
181
171
159
147
135
123
111
99
87
77
67
59
52
46
42
39
38
38
41
44
50
57
63
73
83
94
106
118
129
142
154
166
176
187
195
202
209
214
217
219
219
217
214
209
203
195
188
178
167
155
144
131
119
107
95
84
73
63
57
50
45
41
38
38
39
42
47
53
60
67
77
87
99
111
122
133
145
157
169
180
189
197
204
210
215
217
219
218
216
212
208
200
193
185
174
163
152
140
127
116
104
92
81
71
63
55
48
43
40
38
38
39
43
47
54
61
69
80
91
103
115
127
138
150
161
173
183
192
199
206
212
216
219
219
218
215
211
205
198
192
181
170
159
147
135
123
111
99
87
77
67
60
53
47
42
39
38
39
41
44
50
57
63
72
83
94
106
118
130
142
154
166
177
187
195
202
208
213
218
219
219
216
213
209
204
196
187
178
167
155
143
131
119
107
95
84
73
63
57
50
45
41
39
38
39
42
47
52
59
67
77
86
97
110
123
134
145
157
169
180
190
197
204
210
215
218
219
219
217
213
208
201
193
185
174
164
152
140
127
116
104
92
80
70
60
57
48
40
42
39
38
40
43
49
55
61
69
80
90
102
114
126
137
150
162
172
183
192
199
206
212
216
218
219
218
216
211
205
199
192
182
171
160
148
135
124
112
100
88
77
68
60
53
47
43
39
38
38
40
44
49
56
63
73
82
94
106
119
130
142
154
166
177
187
194
202
208
213
217
218
219
217
214
209
203
195
188
178
166
155
143
131
119
107
95
84
74
65
58
51
46
42
39
39
39
42
46
52
59
66
76
86
98
110
122
133
146
157
170
180
189
197
205
210
214
218
219
218
216
212
207
201
193
186
174
164
152
140
127
116
104
92
81
70
63
55
49
44
41
39
39
41
44
48
54
62
69
79
90
101
113
125
136
148
161
172
183
192
199
206
212
216
218
220
217
214
213
207
196
192
182
170
159
147
135
125
111
99
89
78
68
61
53
47
43
40
38
38
41
44
50
56
63
72
83
94
106
118
130
142
154
165
176
186
194
202
208
213
216
218
218
217
214
209
203
196
188
179
168
156
144
131
120
107
95
84
73
64
57
51
45
41
38
38
39
42
46
52
59
67
76
87
98
110
123
134
146
158
169
181
190
198
205
211
215
218
219
219
216
213
207
200
193
184
173
163
151
139
127
115
103
91
80
71
63
56
49
44
41
39
39
41
44
48
54
62
69
79
90
101
113
126
137
146
160
175
187
195
202
206
210
216
216
217
217
215
211
206
200
192
183
172
161
147
135
124
112
98
86
76
66
59
52
47
42
39
39
39
40
45
50
58
63
72
80
90
105
117
130
144
156
167
178
188
196
202
208
213
217
218
219
218
214
209
203
196
189
179
168
156
143
131
119
108
95
84
74
65
58
51
45
41
39
38
39
42
46
52
59
66
75
86
98
110
122
133
145
157
169
179
189
196
204
210
214
218
219
219
217
212
208
201
193
185
175
163
151
140
127
116
104
92
81
72
63
56
47
43
40
38
38
39
42
47
53
61
69
79
90
102
114
127
138
150
162
173
183
192
199
207
212
216
218
219
217
215
211
205
198
191
182
171
158
146
135
124
111
99
87
76
67
60
53
47
42
39
39
39
41
45
50
57
63
73
83
94
106
118
129
141
153
165
176
186
194
201
208
213
216
218
218
217
214
210
203
196
189
178
167
156
143
131
120
108
96
85
74
65
58
50
45
41
38
38
39
42
47
52
59
66
75
86
98
109
121
133
145
157
169
179
189
197
204
210
215
217
219
218
216
212
207
201
192
185
175
164
151
139
127
116
103
91
81
70
62
54
48
43
40
38
38
40
43
47
54
62
70
80
91
102
114
126
137
149
162
172
183
192
199
206
212
216
218
219
218
216
211
205
198
190
181
170
159
147
134
123
111
99
88
77
68
60
53
47
43
40
38
38
41
44
49
56
63
72
82
94
106
118
129
141
153
165
176
186
194
201
208
213
217
218
219
217
214
209
204
196
189
178
168
156
144
131
120
108
96
84
74
64
58
50
45
41
39
38
39
41
46
52
58
66
75
86
97
110
122
133
145
157
169
180
189
197
204
210
214
218
219
219
216
213
207
201
193
185
175
164
152
139
127
116
103
91
81
70
63
55
48
43
39
38
38
40
43
48
54
62
70
80
90
102
114
126
138
149
161
172
182
192
199
206
212
216
219
220
218
216
212
206
198
192
181
171
160
147
135
124
111
99
88
78
68
60
53
47
42
39
38
38
40
44
49
56
63
72
82
94
106
118
129
142
154
166
176
187
194
202
209
214
217
219
219
217
214
209
203
195
187
178
167
155
143
130
119
107
95
83
73
63
57
50
44
41
39
38
39
42
47
52
60
67
77
88
98
109
122
134
145
155
169
180
188
197
203
211
214
216
219
219
216
212
208
201
193
186
175
163
152
140
127
116
104
92
81
71
63
56
49
44
41
39
39
40
44
48
54
61
69
79
90
101
113
125
137
149
161
172
183
192
199
206
212
216
219
219
219
216
212
206
199
192
182
171
160
147
136
124
111
99
87
77
67
60
52
46
42
39
38
38
41
44
50
57
63
72
83
94
106
117
130
142
155
165
175
186
194
202
208
213
216
218
219
217
214
209
203
196
188
178
167
156
144
131
120
108
96
85
74
66
58
51
46
42
39
38
39
42
47
51
58
66
76
87
98
110
122
133
145
157
168
180
189
197
204
211
215
218
219
219
216
213
208
201
193
185
175
163
151
139
127
116
104
92
81
71
63
56
49
44
41
39
39
40
44
47
54
61
69
79
89
101
113
126
137
149
161
172
183
192
199
206
212
216
219
219
218
216
211
206
199
192
183
172
160
148
136
124
111
101
88
77
67
60
53
46
42
39
39
38
41
44
50
56
63
72
82
93
104
117
129
141
153
166
176
187
194
203
209
214
217
219
219
217
215
208
204
195
185
181
168
154
145
133
121
109
96
87
75
63
57
51
45
41
39
37
38
42
46
51
59
66
76
87
98
110
122
133
145
157
168
179
189
197
205
210
215
218
219
218
216
212
208
201
193
185
175
164
152
139
127
116
104
92
81
71
63
56
49
44
41
39
39
40
43
47
54
62
69
79
90
101
113
125
137
146
158
174
185
194
201
205
210
215
216
216
217
215
211
207
200
192
183
173
161
147
135
124
112
98
86
77
67
59
54
48
43
41
40
39
40
44
50
58
63
72
80
90
104
117
129
143
155
167
178
187
195
201
208
212
216
217
219
218
215
210
204
197
189
180
169
157
144
132
120
107
95
84
74
65
58
51
46
42
39
38
39
42
46
52
59
66
75
86
97
109
121
133
145
157
168
178
189
196
204
210
214
217
218
218
216
212
207
200
192
185
174
164
152
140
128
117
105
93
82
71
63
55
49
44
40
38
38
40
43
47
54
61
68
79
90
102
113
125
137
149
162
172
183
192
199
207
212
216
219
219
218
216
211
205
198
191
181
171
159
147
135
124
111
99
88
77
68
60
53
46
42
39
38
39
41
44
50
57
63
73
83
94
106
118
129
141
154
165
176
185
194
201
208
213
216
218
219
217
214
209
203
196
188
178
167
155
143
131
120
108
97
85
75
66
59
52
47
42
39
39
39
42
46
52
58
65
74
85
97
108
121
132
145
157
169
179
189
196
203
209
213
217
218
218
216
213
208
201
193
187
177
166
153
141
129
118
105
92
80
70
62
54
47
42
39
37
37
39
42
47
53
61
69
79
90
101
114
126
137
149
161
172
183
192
199
207
213
217
219
219
219
217
213
207
199
192
182
171
160
148
135
123
111
100
88
77
68
60
53
47
42
39
37
38
40
44
49
56
63
72
83
93
105
118
129
141
153
165
176
186
193
201
208
213
216
218
218
217
214
209
204
196
188
178
168
156
144
132
121
109
96
86
75
66
59
52
46
42
39
38
39
42
46
51
59
66
75
85
97
109
121
132
144
157
168
179
188
196
203
209
214
217
219
219
217
213
209
202
194
186
176
164
153
140
128
116
104
92
81
71
63
55
48
43
40
38
38
39
42
47
54
61
69
79
90
101
113
126
137
150
161
173
183
192
199
206
212
216
218
219
218
215
211
205
198
192
182
171
161
148
136
125
113
100
88
79
69
60
53
47
43
39
38
38
41
44
49
57
63
72
82
94
105
117
129
141
153
165
175
186
193
201
208
212
216
217
219
217
214
209
202
198
189
176
170
157
144
132
120
110
97
85
75
66
58
51
47
41
39
39
39
41
45
51
59
66
75
86
98
109
121
133
145
157
169
179
189
196
204
210
215
218
220
219
217
213
208
201
194
186
175
164
152
140
127
116
103
92
81
70
63
54
48
44
40
38
38
39
43
47
54
61
69
79
90
102
114
126
137
150
162
173
184
192
199
206
212
216
218
219
218
216
211
206
199
192
182
172
161
149
136
124
112
100
88
78
67
60
53
47
43
39
39
39
41
44
49
56
63
72
82
93
105
117
128
140
152
164
175
185
194
201
208
213
217
218
219
218
214
210
204
197
189
179
168
157
145
133
121
109
97
86
75
66
58
51
45
41
38
37
38
41
45
51
58
65
75
86
97
109
121
132
144
156
168
179
189
196
204
210
215
218
219
219
217
213
208
202
193
185
175
164
152
140
128
116
105
93
81
71
63
56
49
44
41
39
38
40
43
48
54
62
69
78
89
101
113
125
137
149
161
172
182
191
199
205
211
215
217
219
218
216
212
206
199
192
182
171
160
148
136
125
112
100
88
78
68
60
53
47
43
40
39
39
41
45
50
57
63
71
82
93
105
116
128
140
153
164
176
186
193
201
208
213
217
219
219
218
215
211
204
197
189
180
169
157
145
134
121
109
97
86
75
65
57
49
44
41
38
37
38
40
46
52
58
65
75
86
97
109
120
131
144
156
168
179
189
197
205
211
216
219
220
219
218
214
208
202
194
185
176
164
151
138
127
118
102
92
82
71
63
55
49
46
40
37
39
40
42
47
54
60
69
79
90
102
114
127
135
147
163
176
185
192
198
204
210
213
216
218
217
214
212
207
200
192
183
172
159
147
136
124
111
98
88
77
67
61
55
49
44
41
39
39
41
44
51
56
63
70
79
92
104
117
129
142
154
166
176
187
193
201
207
212
216
219
220
219
216
211
206
198
191
181
170
157
145
132
120
108
96
85
74
64
57
51
45
41
39
37
39
41
45
50
58
65
75
85
97
109
121
133
144
157
168
179
189
197
205
211
215
218
219
219
217
213
208
201
193
185
175
165
152
140
128
117
104
93
81
71
63
56
49
44
40
39
38
40
43
48
54
62
70
79
90
102
113
126
136
149
161
172
182
192
199
206
212
216
218
219
218
215
211
205
199
192
182
171
161
149
136
125
113
101
89
79
69
61
54
47
43
40
39
39
41
44
49
55
63
71
82
93
105
117
128
140
152
164
175
186
194
201
208
213
217
219
220
219
215
211
204
197
189
179
168
156
144
132
121
109
96
85
75
65
58
51
45
41
39
38
39
41
45
51
58
66
75
85
97
109
121
133
145
157
169
180
189
197
204
210
214
217
219
218
216
213
208
202
194
186
176
165
153
141
128
117
105
92
81
71
63
55
48
43
40
39
39
40
43
48
54
61
69
79
89
101
113
126
137
149
161
172
183
192
199
206
211
216
218
219
219
216
211
205
198
192
182
172
160
148
136
125
113
101
90
79
69
61
54
47
43
39
38
38
40
43
48
55
63
71
81
92
105
117
128
141
153
164
176
186
194
202
208
213
216
219
219
218
215
211
204
197
189
180
169
157
144
132
121
108
97
84
74
65
58
51
46
42
38
38
39
41
46
51
58
65
75
85
97
109
121
132
145
157
168
179
190
196
203
209
214
218
219
218
216
213
208
202
194
186
176
165
153
140
128
116
104
93
82
71
63
56
49
45
41
39
38
40
44
48
54
62
69
79
89
100
113
125
137
147
158
171
183
192
198
205
211
216
218
218
218
215
211
206
200
192
183
172
162
150
137
126
113
101
89
79
69
61
53
47
42
39
37
37
40
44
49
55
63
70
79
94
104
114
129
141
153
164
176
187
194
201
207
214
217
218
219
218
215
210
205
197
189
180
169
157
144
132
121
109
97
85
75
66
59
52
46
41
39
38
39
41
46
51
58
65
75
86
97
109
121
132
144
157
168
179
188
196
204
209
213
216
218
217
215
212
208
201
193
185
175
164
153
141
129
118
105
93
82
72
63
56
49
44
41
39
39
41
44
48
54
61
69
79
89
101
112
124
136
147
159
170
181
190
198
205
212
215
218
219
218
216
212
206
200
192
183
173
161
150
137
126
114
101
89
79
69
61
53
47
42
39
38
38
40
43
48
55
63
71
81
92
104
116
128
140
153
164
176
186
194
202
208
213
217
219
220
218
214
210
204
197
189
179
168
157
145
133
122
109
98
86
75
66
58
50
45
41
38
37
38
41
45
51
58
65
75
86
97
109
121
132
145
156
168
178
188
196
204
209
214
217
219
219
216
213
208
201
194
186
176
165
153
141
129
117
105
93
82
72
63
57
50
45
41
39
39
40
43
47
53
61
68
78
88
100
112
124
136
148
160
171
182
192
198
205
211
215
218
219
218
216
212
207
200
192
184
173
162
149
138
125
114
101
90
78
68
60
53
47
42
39
38
38
40
44
49
56
63
72
82
93
104
116
128
140
152
164
175
185
194
202
208
214
217
219
219
218
215
210
204
197
189
179
168
157
145
132
121
109
97
85
75
65
58
51
45
41
38
38
39
42
46
52
59
66
75
86
98
109
121
131
144
155
167
178
188
196
203
209
214
217
218
218
216
213
208
202
193
186
176
165
153
141
129
118
106
94
83
73
63
57
50
45
41
38
38
40
42
46
53
61
68
78
88
100
113
123
132
148
162
174
185
192
196
204
210
213
217
218
218
216
213
208
201
192
184
173
160
148
137
124
111
99
88
77
67
63
55
44
44
41
38
38
40
46
51
54
63
70
79
92
105
117
129
142
155
166
176
186
193
201
208
211
216
219
219
218
215
210
204
197
190
180
168
156
144
132
121
108
96
85
75
66
59
51
46
41
39
38
39
41
46
51
58
65
75
85
97
109
121
132
145
156
168
178
188
195
203
209
214
217
219
219
216
213
208
201
193
185
176
165
153
141
129
117
105
93
82
72
63
56
50
44
41
38
38
40
42
47
53
61
68
78
89
100
112
125
136
148
160
171
182
192
199
205
212
216
219
219
219
216
212
206
199
192
183
172
161
149
137
125
113
101
89
78
68
61
53
47
43
39
38
38
40
43
48
55
63
71
81
93
105
117
128
140
153
164
176
186
194
201
208
213
216
219
219
218
215
211
205
197
189
180
168
156
144
132
121
109
97
85
75
66
58
51
46
42
40
39
40
42
46
52
58
66
75
85
96
108
120
131
144
156
167
178
188
195
203
209
213
217
218
219
216
213
208
202
195
187
176
166
154
142
130
118
106
94
83
73
63
56
49
44
41
38
38
39
42
47
53
60
67
77
87
99
111
123
135
147
160
170
182
191
198
206
212
216
219
220
219
217
212
207
200
192
184
173
162
150
138
126
114
102
90
79
69
61
54
47
42
39
36
37
39
43
48
55
63
71
82
92
105
116
128
140
152
164
175
185
193
200
207
212
216
218
219
218
216
211
205
197
190
180
169
157
144
132
121
109
97
86
75
66
59
52
47
43
40
39
40
43
46
51
58
65
75
84
96
108
120
131
144
156
167
178
188
196
203
210
214
217
218
218
216
213
208
201
194
186
176
165
153
141
129
117
105
92
82
72
63
56
50
45
40
39
39
39
43
47
54
61
68
78
88
100
112
124
136
147
160
172
182
192
199
206
211
216
219
219
219
216
212
205
200
192
180
174
162
147
137
126
113
100
89
79
69
60
52
47
43
38
38
38
40
44
49
56
63
72
82
93
105
117
128
141
153
164
175
185
193
201
208
212
216
218
219
217
214
209
204
196
188
178
168
157
144
132
121
109
97
86
75
67
59
52
46
42
39
39
39
41
46
51
57
65
74
85
96
107
120
132
145
156
167
178
189
196
204
209
214
217
219
219
217
213
208
202
194
186
176
165
153
142
129
117
105
93
82
71
63
55
48
43
40
38
38
40
43
47
53
60
68
79
89
100
112
124
136
148
160
171
182
192
199
205
212
215
218
219
218
216
211
206
199
192
182
172
161
149
137
126
113
101
90
79
69
60
54
47
42
39
37
38
40
44
48
55
63
71
82
92
105
116
128
140
152
164
175
184
193
201
208
213
216
218
219
218
215
211
204
197
189
180
169
157
145
133
122
110
98
86
76
67
59
52
46
41
38
38
38
41
44
51
57
65
74
85
97
108
120
131
144
156
167
178
188
196
204
209
215
218
219
219
217
214
209
202
195
187
177
165
154
142
129
118
105
93
83
72
63
56
49
44
40
39
38
39
42
47
52
60
67
77
88
100
112
124
136
148
159
171
182
192
198
205
211
215
218
219
218
216
212
206
200
192
183
172
161
149
137
125
113
101
89
79
69
61
53
47
43
40
38
39
41
44
50
56
63
72
82
93
105
117
127
139
152
164
175
185
193
201
208
213
217
219
219
217
215
210
203
196
189
179
169
157
145
133
122
110
98
86
76
66
59
52
46
41
39
38
39
41
45
51
58
65
74
85
97
109
120
132
144
156
167
178
188
196
203
210
214
218
219
219
217
213
208
202
194
186
176
165
153
141
128
117
105
94
83
72
63
57
50
45
41
38
38
39
42
47
52
60
67
78
89
98
110
127
139
152
164
172
180
191
197
203
210
215
218
219
220
217
214
208
201
192
183
173
162
148
136
125
112
100
90
80
70
62
55
47
42
39
38
39
40
44
48
52
61
71
82
93
105
117
129
140
152
164
174
184
192
200
208
214
218
220
220
220
217
212
206
198
190
180
169
157
145
133
122
109
98
86
76
67
59
52
47
41
37
38
39
38
44
51
57
65
74
85
98
108
120
132
145
156
168
179
188
196
204
208
213
217
218
219
217
213
208
202
194
187
176
165
153
141
129
118
106
94
83
73
63
57
50
45
41
39
38
40
42
47
52
60
68
78
88
100
112
124
136
148
160
171
182
191
198
205
210
215
218
219
218
216
212
207
199
192
184
175
163
149
137
126
114
102
90
78
69
61
54
48
43
40
38
39
40
43
48
55
62
70
80
91
104
115
127
139
151
163
174
185
193
200
208
214
217
218
219
218
216
211
204
197
189
181
169
158
146
133
122
110
98
87
76
66
59
52
46
42
39
38
38
41
45
51
57
65
74
84
96
107
120
131
143
155
167
177
188
195
203
208
213
217
218
219
217
214
209
202
194
186
177
166
154
142
129
118
106
94
82
72
63
57
50
44
41
39
38
39
42
47
53
60
68
77
88
100
112
124
135
147
159
171
181
191
198
205
211
215
218
218
218
216
211
207
200
192
184
173
161
150
138
126
114
102
91
80
69
62
54
48
43
40
38
39
40
44
48
55
62
70
80
91
103
116
127
139
151
163
174
184
192
200
207
212
216
218
219
218
215
210
205
197
190
180
169
158
146
134
122
110
98
87
75
66
59
52
46
42
39
38
39
41
45
51
57
63
74
84
95
107
120
131
143
156
168
179
188
196
204
210
214
217
219
218
216
213
208
201
193
186
176
165
154
142
129
118
105
94
82
72
63
56
49
44
41
39
38
39
43
47
54
61
66
80
89
98
113
124
135
147
159
171
181
190
198
206
211
215
219
219
219
217
212
207
199
192
183
173
161
150
138
126
114
102
90
79
69
61
53
47
43
39
38
38
40
43
48
55
62
70
81
92
104
116
127
140
152
164
175
185
193
201
207
213
216
219
219
218
215
211
205
198
190
180
169
158
146
133
122
110
98
86
76
66
59
51
46
42
39
38
39
42
46
51
58
65
74
84
95
108
119
131
143
155
167
177
188
195
203
209
214
217
219
219
217
213
208
202
194
187
177
166
154
142
130
118
106
94
83
73
63
56
50
44
41
38
38
40
43
47
54
61
68
78
88
100
111
123
135
147
159
170
181
190
198
205
211
215
218
219
219
216
212
207
200
192
184
173
162
150
138
126
114
102
90
79
69
61
54
47
43
39
38
38
40
44
49
56
63
72
82
93
104
116
127
139
152
163
175
184
193
201
208
213
216
219
220
219
216
211
205
197
190
180
169
157
145
133
122
109
98
86
76
66
59
51
46
41
39
37
37
40
45
51
57
63
74
85
98
109
121
132
145
157
168
179
188
195
203
209
213
217
218
218
217
213
209
202
195
187
177
166
154
141
130
117
105
94
83
74
63
56
50
46
43
40
39
41
43
47
53
59
67
76
87
98
110
122
134
146
158
170
180
190
197
205
211
216
218
219
219
217
213
208
201
192
185
174
163
151
139
127
115
103
91
80
69
62
54
47
42
39
37
37
39
43
48
54
62
70
81
92
103
116
127
139
151
164
175
185
193
201
208
213
216
219
220
219
216
210
205
197
189
180
168
157
145
133
122
110
97
86
75
66
59
51
46
42
40
38
39
42
46
51
58
65
74
85
97
108
121
132
144
156
166
177
187
194
202
208
213
216
218
218
216
213
209
203
194
187
177
166
154
142
129
118
106
94
83
73
63
57
50
45
42
39
39
40
42
47
52
59
66
77
85
96
113
126
138
150
159
168
181
189
196
204
210
214
218
220
219
217
213
208
199
192
184
173
161
148
137
125
113
102
91
80
70
62
54
47
43
39
39
38
39
42
45
54
62
71
81
93
105
117
128
140
152
163
174
184
192
201
208
213
217
219
220
219
216
212
205
197
189
180
168
157
145
133
122
109
97
87
76
66
59
51
46
42
39
37
38
41
45
50
57
65
74
85
97
107
120
132
144
155
167
178
188
195
203
209
214
217
218
219
217
214
209
202
194
187
176
165
153
141
129
118
106
94
83
73
63
57
50
45
41
39
39
40
43
46
51
61
68
75
88
100
111
124
134
147
161
170
180
191
197
204
211
215
217
219
219
216
212
207
201
193
185
174
163
151
138
127
115
101
89
79
68
61
53
47
43
39
38
38
39
43
47
54
62
70
80
91
103
115
127
139
151
163
175
185
194
201
208
213
217
219
219
218
215
210
204
196
189
180
170
157
146
134
122
110
98
87
76
67
59
53
47
42
39
38
39
41
46
51
58
64
74
84
95
107
119
130
142
154
165
176
187
194
202
209
213
217
219
219
217
214
209
203
195
187
178
166
155
143
131
119
107
96
84
74
63
57
50
45
41
39
38
39
42
46
52
59
66
76
86
98
111
123
134
147
158
170
180
190
198
205
211
216
220
220
219
216
213
208
201
192
184
174
163
151
139
127
114
102
90
79
69
61
53
47
43
39
38
38
40
43
48
54
62
70
80
91
103
117
128
139
151
163
174
185
192
200
207
212
216
218
219
217
214
210
204
197
189
180
169
158
146
134
123
110
99
88
77
67
61
53
47
43
41
39
39
42
47
52
58
65
75
85
96
107
119
130
142
154
165
176
186
194
201
208
212
216
218
218
216
214
209
202
193
188
178
165
154
143
130
118
107
95
85
73
63
58
51
45
42
40
39
40
43
47
53
60
68
77
87
98
110
123
134
147
159
170
181
192
198
206
211
216
218
219
219
217
212
208
200
192
183
173
162
150
138
126
115
102
90
79
69
61
53
47
42
39
37
37
39
44
49
55
63
71
82
92
104
116
128
139
152
164
175
185
193
201
207
212
216
219
219
218
214
210
204
197
189
180
169
158
146
134
122
110
98
87
76
67
59
52
46
42
39
38
39
41
46
51
58
64
74
84
95
107
119
130
142
154
166
177
187
195
203
209
214
217
219
219
217
214
209
203
195
187
178
166
155
143
131
119
107
95
83
73
63
57
49
45
40
38
38
39
42
46
52
59
67
77
88
99
111
123
135
146
158
170
181
190
198
206
212
216
219
220
219
217
213
208
200
192
184
174
162
150
138
127
114
103
91
80
70
62
54
47
43
39
38
38
40
43
49
55
63
71
81
93
104
117
127
140
151
163
174
184
192
200
207
212
216
218
219
218
215
210
205
198
190
180
170
158
146
134
122
110
98
87
76
67
59
52
47
43
40
39
39
41
45
50
57
63
73
83
94
107
119
130
143
155
166
177
187
195
202
208
213
217
218
218
217
214
209
203
196
188
178
167
155
143
131
119
107
95
83
73
63
57
50
44
41
38
38
39
41
46
52
60
67
77
87
98
111
123
134
147
159
170
181
190
198
205
211
215
218
219
219
216
212
207
200
192
184
173
162
150
138
126
114
102
91
80
70
62
55
48
44
40
39
39
41
44
49
55
63
70
80
91
103
115
127
139
151
162
173
183
192
199
206
211
216
218
219
218
215
211
205
198
190
181
170
158
146
134
123
111
99
87
77
68
60
52
45
42
39
39
39
41
45
51
57
63
73
83
95
107
120
130
143
155
167
177
188
195
202
208
213
217
218
219
217
214
209
202
195
188
178
166
154
142
130
118
106
94
82
73
63
57
49
44
41
39
38
39
42
47
52
59
67
77
86
96
112
127
138
150
160
169
180
190
195
204
210
214
218
220
219
217
213
208
200
192
184
174
161
148
138
126
113
102
92
81
70
63
54
47
43
39
39
38
39
42
45
52
63
70
81
93
105
116
127
139
151
162
173
184
192
200
208
213
217
219
220
219
216
212
206
198
190
180
169
157
146
134
122
110
98
87
76
67
60
52
46
41
38
37
38
40
44
50
57
63
73
83
95
107
119
130
142
154
166
177
187
195
202
209
214
217
219
219
217
214
210
203
196
188
178
166
154
142
130
118
106
94
83
73
63
57
51
45
42
39
39
39
42
47
53
60
67
77
87
99
110
123
134
145
158
170
179
189
198
205
210
214
217
218
218
216
213
208
200
192
184
174
163
151
138
127
115
103
91
81
70
63
55
49
44
41
39
39
41
44
48
54
62
69
79
91
101
113
127
139
148
163
174
183
192
199
207
213
216
218
219
218
215
211
205
198
191
182
170
160
147
135
124
111
99
88
77
67
59
52
46
42
39
38
38
41
45
50
57
65
73
84
94
107
118
130
142
154
166
177
187
195
202
209
214
218
219
219
217
214
209
202
194
187
177
166
154
142
130
119
107
94
84
73
63
57
50
45
41
39
39
40
43
47
53
60
67
77
87
99
111
123
135
146
158
170
180
190
197
205
211
216
218
219
218
217
213
207
200
192
184
174
163
151
139
127
115
103
91
80
70
62
54
48
43
39
38
38
39
43
47
54
62
70
80
91
103
115
127
138
150
163
174
184
192
201
207
212
217
220
219
218
216
212
206
198
191
181
170
158
147
135
123
111
99
88
77
67
59
52
46
42
39
38
39
41
45
51
57
63
75
84
93
108
120
130
142
155
166
178
187
195
204
209
213
217
219
218
217
214
208
202
195
187
177
166
154
142
130
118
106
95
83
74
65
58
51
45
41
39
39
39
42
47
53
60
68
77
88
99
111
123
135
147
158
169
179
189
198
205
210
215
218
220
220
217
213
208
201
193
185
174
163
151
138
127
114
103
91
80
70
62
55
48
43
39
38
38
40
44
48
54
61
70
81
91
103
115
127
139
151
163
173
184
192
200
207
212
216
218
219
218
215
211
206
198
191
181
171
159
147
135
123
111
98
87
76
67
59
52
46
42
39
38
39
41
45
50
57
63
73
83
94
107
118
130
142
155
166
178
188
195
203
209
214
217
219
218
217
214
209
203
195
187
178
167
155
143
131
119
107
95
84
74
64
57
50
45
41
39
38
39
42
46
52
59
67
76
87
99
110
123
133
146
158
169
180
190
197
205
211
216
218
219
219
216
213
208
200
192
184
174
163
151
139
127
115
103
92
81
71
63
55
48
44
39
38
38
40
43
48
55
61
70
80
91
102
115
127
138
151
163
173
184
192
199
207
211
215
218
219
218
215
211
205
198
190
181
170
159
147
134
123
111
99
87
77
67
60
52
47
42
39
38
39
41
45
50
56
63
72
83
94
107
119
130
142
154
167
177
188
195
203
208
213
217
218
219
217
214
209
203
195
188
178
167
156
143
131
119
107
95
84
73
63
57
50
44
41
38
38
39
42
46
52
59
67
77
87
98
111
123
134
146
158
169
181
190
197
205
210
215
218
219
218
216
212
207
200
192
184
174
163
150
139
127
115
103
91
80
70
63
54
48
44
40
39
39
40
44
48
55
63
70
80
91
103
114
126
138
150
162
173
183
192
199
206
212
216
218
218
218
215
211
205
198
190
180
170
158
146
134
123
111
99
88
77
68
61
53
47
42
39
38
38
40
44
49
56
63
72
83
94
107
119
130
142
155
166
177
187
195
202
208
213
216
219
218
217
214
210
203
196
188
179
168
155
144
130
119
106
94
82
71
63
56
48
44
40
38
38
39
43
47
53
60
68
77
88
99
111
123
135
147
159
170
181
191
198
202
211
218
221
222
220
214
211
205
197
192
182
172
162
151
139
127
116
104
91
79
69
62
54
46
42
39
37
38
42
45
50
56
63
71
80
91
102
115
126
137
147
158
172
183
192
201
208
213
218
219
220
217
215
209
204
197
190
182
171
160
148
137
125
113
102
89
77
67
59
51
46
41
38
37
38
40
45
49
57
63
73
83
94
106
117
129
141
154
165
177
187
195
203
209
214
217
219
219
218
214
210
203
196
187
177
166
154
142
130
119
107
95
84
73
63
56
51
46
42
39
37
39
43
47
52
59
67
77
87
99
111
123
134
146
158
169
180
189
197
204
210
214
217
218
219
216
213
207
201
193
184
174
164
153
140
127
115
104
92
81
70
62
54
48
43
39
37
37
39
42
47
53
61
69
79
90
101
114
125
137
149
161
173
184
192
200
208
212
216
219
220
218
215
212
206
198
190
181
172
160
147
135
124
111
100
88
77
67
59
52
46
42
39
38
39
41
45
50
57
64
74
84
94
106
119
130
141
154
165
174
188
193
200
209
213
217
218
219
219
215
209
203
196
187
177
166
155
143
131
120
108
96
84
74
66
58
51
45
41
38
38
39
41
46
52
59
67
76
87
98
110
122
134
146
158
169
180
189
196
204
209
214
217
219
218
217
213
208
202
194
185
175
164
152
139
127
115
103
91
80
70
63
54
48
43
40
38
38
40
44
48
54
61
69
79
90
102
114
126
138
150
163
173
184
192
200
207
212
216
218
219
218
215
212
205
196
192
181
169
159
148
135
123
112
100
88
76
66
60
52
46
43
39
38
39
42
45
50
57
64
74
84
95
107
118
129
141
154
165
176
186
194
201
208
213
217
219
219
217
214
209
203
195
187
178
167
155
143
131
120
107
96
84
74
65
58
51
46
42
39
39
39
42
46
52
59
66
76
87
98
110
122
133
146
157
169
180
190
197
204
210
214
218
219
220
217
214
208
202
193
185
174
163
151
139
127
114
103
91
80
70
62
54
48
44
40
39
39
39
43
47
53
61
69
79
90
102
114
126
139
150
163
174
184
192
200
207
212
216
218
219
218
216
211
205
199
192
182
171
160
147
135
123
111
98
87
76
66
59
51
46
42
40
39
39
42
45
50
57
63
73
83
94
106
118
130
141
153
165
176
186
194
202
208
213
216
218
218
216
213
209
203
195
188
177
167
155
143
131
120
108
97
85
75
66
58
52
46
42
39
39
39
42
46
52
58
66
75
86
97
109
121
133
145
157
169
180
189
197
204
211
215
217
219
219
217
213
208
201
193
185
175
164
152
140
127
116
103
91
80
70
62
54
47
43
39
38
38
40
43
48
55
62
70
79
90
102
114
127
139
151
162
172
183
192
200
207
211
216
218
219
218
215
211
205
198
190
181
170
159
147
135
123
111
99
88
77
68
60
53
47
43
39
38
39
42
46
51
56
63
73
83
94
105
117
129
141
153
165
176
186
194
202
208
214
216
218
219
217
214
208
203
195
188
178
168
156
144
132
120
108
96
85
74
65
57
51
45
41
39
38
39
42
46
52
59
67
76
86
98
109
122
133
145
158
169
180
189
197
205
211
215
218
220
219
217
213
208
200
192
185
174
163
151
139
127
115
102
91
80
70
62
54
48
43
40
38
38
40
43
48
55
62
70
80
91
103
115
127
138
151
162
173
184
192
200
207
213
216
218
219
218
215
211
205
198
190
180
170
158
147
134
123
111
99
88
77
67
60
53
47
43
39
38
38
41
45
50
56
63
73
83
94
106
118
130
142
153
165
176
186
194
202
209
214
217
219
219
218
214
210
203
196
188
179
167
156
144
131
120
107
95
84
73
64
57
50
45
41
38
38
39
42
46
52
59
66
76
86
98
110
122
134
146
158
170
180
190
197
205
210
215
218
219
219
214
210
209
204
195
187
174
161
151
138
126
115
103
91
82
72
63
56
49
44
39
37
38
39
41
46
53
61
68
80
92
103
115
127
138
149
162
172
185
192
199
206
209
214
218
220
220
217
212
207
199
192
181
169
158
145
134
123
112
100
89
77
69
61
54
47
43
39
37
38
40
43
49
56
63
73
83
94
107
118
130
141
153
165
176
186
193
201
208
213
216
218
219
217
215
210
203
196
188
178
167
156
144
131
120
108
96
84
74
65
58
51
45
41
39
38
39
41
45
51
58
66
75
85
98
110
123
134
146
157
169
180
189
197
204
210
215
218
219
219
217
213
208
201
193
185
175
164
151
139
127
116
104
92
81
71
63
55
48
43
40
39
38
40
43
48
54
62
69
80
91
101
114
126
137
149
161
172
182
192
199
206
211
215
218
219
218
215
211
205
198
191
181
171
160
147
136
125
113
100
89
79
69
61
54
47
43
39
38
38
40
44
49
56
63
72
83
94
106
118
129
141
153
165
176
186
194
202
208
214
217
219
219
218
215
210
203
196
188
178
168
155
143
129
119
108
96
83
73
65
58
51
46
41
39
38
39
42
46
52
59
67
76
87
99
111
123
134
147
158
169
181
189
196
204
209
213
217
218
216
216
213
207
201
192
186
177
164
152
140
127
115
103
91
80
70
63
55
49
44
41
39
39
41
43
47
53
63
69
77
90
101
112
125
136
149
161
172
183
192
199
206
212
216
218
219
218
215
211
205
199
192
182
172
161
148
137
125
113
101
89
79
68
60
53
46
41
38
37
37
39
43
49
55
63
72
82
93
106
118
129
142
154
166
176
187
195
203
208
214
217
219
219
218
215
210
204
196
188
178
167
156
144
132
120
108
96
84
74
64
57
50
45
41
39
38
39
42
46
52
59
66
76
86
98
110
122
133
145
158
168
179
188
196
204
209
214
217
218
218
216
213
208
201
193
185
175
164
152
140
128
117
105
93
82
72
63
56
49
44
41
39
39
40
43
47
53
60
68
78
89
100
112
125
136
149
161
172
182
192
199
206
211
215
218
219
218
216
212
206
199
192
183
172
161
149
137
125
112
100
88
77
67
59
52
46
41
39
38
39
41
45
50
57
63
73
83
94
106
117
129
141
154
166
176
187
195
202
209
213
217
218
218
217
213
208
202
195
187
178
167
156
144
132
120
108
97
85
75
65
57
51
45
41
39
38
39
42
46
52
59
67
77
87
98
110
122
133
145
157
168
179
189
196
204
210
215
218
219
219
217
213
208
201
193
185
175
163
152
139
127
115
104
92
81
71
63
55
49
44
40
38
38
40
43
47
53
62
69
79
90
102
114
126
137
149
161
173
183
192
199
207
211
216
219
219
218
216
211
206
199
192
182
171
160
148
135
124
111
99
88
77
67
60
53
47
42
39
38
39
41
45
50
57
63
72
83
94
106
117
129
141
153
165
176
186
194
202
208
213
216
219
219
217
214
209
203
196
188
179
168
156
144
132
121
108
96
84
74
64
57
50
44
41
38
37
39
42
46
52
59
66
76
85
98
110
121
133
145
157
168
179
189
197
204
210
215
218
220
219
217
214
208
201
193
184
174
163
151
139
127
116
104
92
81
71
63
55
48
44
40
38
38
39
43
48
54
60
68
79
90
102
114
126
137
149
161
172
183
192
199
206
212
216
219
219
219
216
212
206
199
192
182
171
160
147
135
124
111
99
88
78
68
60
52
47
43
40
38
38
40
44
50
56
63
71
82
93
105
117
128
141
153
165
176
186
193
201
208
213
216
218
219
218
215
210
204
196
189
179
168
156
144
133
121
109
97
85
75
65
58
51
45
42
39
38
39
42
47
52
59
66
76
86
98
109
121
133
145
157
168
179
189
196
204
209
214
217
219
218
216
213
208
201
193
185
174
160
152
143
130
119
105
91
80
70
61
54
48
43
40
39
39
40
44
49
54
60
69
79
89
100
113
125
136
149
163
174
184
192
200
207
211
216
218
220
218
215
209
202
197
190
182
172
161
149
136
125
112
99
87
77
67
60
53
48
43
39
39
39
42
45
51
57
63
73
83
94
106
118
129
142
154
166
176
187
194
201
208
212
216
217
218
217
214
210
203
197
189
180
168
156
143
130
119
106
94
83
73
65
58
51
46
42
40
39
40
42
47
52
59
66
75
85
96
109
120
132
144
157
168
180
189
196
204
210
215
218
219
219
217
213
208
201
194
186
176
165
153
141
129
117
105
93
81
71
63
55
48
43
39
38
38
39
42
47
53
61
68
79
89
101
113
125
136
149
161
172
183
192
200
206
212
216
219
219
218
216
211
205
198
192
182
171
160
148
136
124
112
100
88
77
68
60
53
47
43
39
39
39
41
45
49
56
63
72
82
94
106
118
129
142
154
165
176
187
194
202
209
214
217
219
218
217
214
209
203
195
188
179
167
155
144
132
121
108
96
84
75
65
58
51
45
41
38
38
39
42
46
51
59
66
75
85
96
108
121
132
144
156
168
179
189
196
204
210
215
218
219
219
218
213
206
203
194
185
175
164
153
141
129
117
106
92
80
71
63
55
49
43
40
38
39
40
43
48
54
62
69
79
90
101
113
125
136
149
161
172
183
192
199
206
212
216
219
220
217
214
212
207
197
191
182
171
161
147
136
125
112
100
89
78
68
60
53
47
42
39
38
38
40
44
50
56
63
72
83
94
105
118
129
141
153
165
176
186
194
202
208
214
218
219
219
216
214
210
204
196
188
178
167
156
144
131
120
108
96
85
75
66
58
51
45
41
39
38
39
41
46
51
58
65
75
85
96
109
122
133
144
156
168
180
189
197
204
210
215
217
219
219
216
213
208
201
193
186
175
164
152
140
127
116
104
92
81
71
63
55
49
44
40
38
38
40
43
47
54
62
69
79
90
101
113
126
137
149
161
173
183
192
199
206
211
216
218
218
218
214
211
205
198
192
181
171
160
148
136
124
112
101
88
78
68
60
53
47
42
39
38
38
40
44
50
57
63
73
82
94
105
117
128
141
152
164
175
185
194
202
208
213
217
219
219
218
215
210
204
196
188
178
168
156
144
132
121
108
96
85
75
65
58
51
44
40
38
37
38
40
45
50
58
65
75
86
98
110
122
133
145
157
168
179
189
197
204
210
215
218
220
219
217
213
208
202
194
186
176
164
152
140
127
116
104
92
81
72
63
56
50
45
41
39
38
39
43
47
53
61
68
77
88
100
112
125
136
148
159
172
182
192
198
205
211
215
218
219
218
216
212
206
199
192
183
173
162
149
137
125
113
101
89
79
68
61
53
47
43
39
38
38
40
44
49
56
63
71
82
93
104
117
127
140
152
164
175
185
193
201
208
212
217
218
219
218
214
210
204
196
189
179
169
157
145
133
121
110
97
86
75
65
58
50
45
41
39
37
38
41
45
50
57
65
75
86
97
109
121
133
144
156
168
179
189
196
204
210
216
218
220
220
218
214
209
203
194
186
175
164
152
139
127
115
104
91
81
71
63
55
49
44
40
38
38
39
42
47
53
60
68
78
89
101
113
126
138
150
162
173
184
192
199
206
211
214
217
218
217
214
210
206
198
192
182
172
160
148
136
124
112
100
88
79
69
61
53
47
43
40
39
39
41
45
50
56
63
72
82
93
105
116
128
140
152
164
175
185
193
201
208
213
217
219
219
218
215
210
205
197
189
179
169
157
145
132
121
108
97
85
74
64
57
50
45
41
38
37
38
41
45
51
58
66
75
86
98
109
122
133
145
157
169
179
189
197
204
210
215
218
219
219
217
213
208
201
193
185
175
164
153
140
128
117
104
89
81
75
67
60
49
42
39
38
36
38
41
46
53
62
70
79
90
102
114
125
137
149
160
170
181
191
197
205
212
216
218
219
219
215
211
205
198
192
184
172
159
145
135
125
113
102
90
79
70
62
54
48
42
39
38
38
40
45
50
56
63
72
82
93
105
117
128
140
152
164
175
186
194
202
208
213
217
219
219
218
214
210
204
196
189
179
168
157
145
133
121
109
97
85
74
64
57
50
45
41
39
38
39
41
46
52
59
66
75
86
97
109
121
132
144
156
167
179
188
196
204
209
215
218
219
219
217
213
208
201
193
185
175
164
153
140
128
117
105
93
82
72
63
56
49
44
40
38
38
39
43
47
54
61
69
79
90
101
113
125
137
149
160
171
182
192
198
205
210
215
217
219
218
215
211
206
199
192
183
172
161
149
137
126
113
102
90
79
69
61
53
47
42
39
38
38
40
43
48
55
63
71
81
91
103
116
128
140
151
164
175
185
193
201
208
213
216
218
220
218
215
210
204
197
189
179
168
157
145
133
121
109
97
85
74
65
58
50
45
41
38
37
39
40
44
52
58
63
75
86
97
108
121
133
145
156
168
179
188
196
205
210
214
218
219
219
217
213
208
201
193
185
175
164
152
141
128
117
105
93
82
71
63
55
48
43
40
38
38
39
43
47
54
61
69
79
90
101
112
124
136
148
159
170
181
191
198
205
211
215
218
219
219
216
212
206
199
192
182
173
161
149
137
126
113
102
91
79
69
61
54
47
42
38
38
37
39
43
47
54
63
70
81
92
105
117
128
140
152
164
175
185
193
201
208
213
217
219
220
218
216
211
204
198
189
178
170
157
143
133
121
108
95
84
75
65
57
51
46
41
38
38
38
41
46
51
58
66
75
86
98
109
121
132
145
156
168
179
189
196
204
210
214
217
218
218
216
213
208
202
193
186
175
165
153
141
129
117
105
93
82
72
63
57
51
45
41
39
39
40
44
47
54
61
68
79
88
100
111
123
134
146
158
169
181
190
198
205
211
215
218
219
219
216
212
207
200
192
182
172
161
149
137
126
114
102
90
79
69
62
54
47
43
39
38
38
39
43
47
55
63
71
82
93
105
117
129
142
153
164
174
185
193
201
207
213
216
219
219
218
216
211
205
198
190
179
169
156
144
131
119
107
95
84
74
63
57
50
45
42
39
38
39
43
47
51
58
65
75
86
97
109
121
133
146
158
169
180
189
197
204
210
214
217
219
218
216
213
208
201
193
185
175
164
153
141
129
117
105
93
82
72
63
56
50
45
41
39
39
41
43
48
54
61
68
78
89
100
112
124
135
148
160
171
182
192
199
206
211
216
218
219
219
216
212
206
199
192
183
172
161
149
137
125
113
101
89
78
68
61
53
47
42
39
38
39
41
44
49
56
63
71
82
92
105
117
129
140
153
164
175
185
193
202
208
213
216
219
219
218
215
210
204
197
189
180
169
157
145
133
121
109
97
85
75
65
58
51
46
41
39
38
39
42
45
51
58
65
75
85
97
108
121
132
144
156
168
179
189
196
204
210
214
217
218
218
217
213
208
202
194
186
177
165
154
141
129
117
105
93
82
71
63
56
49
44
41
39
38
39
43
47
54
60
68
78
88
100
111
124
135
148
160
172
182
192
199
206
212
216
218
219
218
216
212
206
199
192
183
172
161
149
137
125
113
101
89
79
68
61
54
47
43
39
38
39
41
44
50
56
63
72
82
93
104
117
128
140
152
164
174
185
193
201
208
213
217
219
220
217
215
210
204
197
189
179
168
156
144
132
121
109
97
85
75
66
58
51
46
42
39
38
39
42
46
52
59
66
75
86
97
109
120
132
144
157
168
179
188
196
203
209
214
217
219
218
217
213
208
202
194
186
176
165
153
141
128
118
105
93
82
72
63
57
48
41
41
42
42
43
45
46
52
59
66
76
87
99
111
125
136
149
161
173
182
190
198
206
210
213
217
218
217
214
212
207
200
192
184
173
162
150
137
127
114
102
88
76
68
61
54
49
45
41
40
39
41
43
48
55
63
70
81
93
105
116
127
140
152
164
175
185
193
201
208
213
216
219
219
218
216
210
204
197
189
179
168
156
144
132
121
109
97
86
75
66
59
51
46
41
39
38
39
41
45
51
58
65
74
85
96
109
120
132
144
156
167
178
188
196
203
209
214
217
219
219
218
214
209
203
194
187
177
166
153
140
128
117
106
93
82
71
63
56
50
44
40
38
38
39
43
47
53
60
68
78
88
100
111
124
135
148
159
171
182
191
198
205
212
216
218
218
217
216
212
206
199
192
182
173
162
151
137
126
114
103
90
79
69
62
54
47
43
40
38
38
40
43
49
55
63
71
81
92
103
116
127
139
152
164
175
185
194
201
208
213
217
220
219
217
217
211
203
197
189
179
167
157
145
133
121
109
98
86
75
66
59
51
47
42
39
38
39
41
45
50
57
65
75
86
98
109
122
133
145
156
168
178
188
196
204
209
214
216
218
218
216
213
202
202
194
186
176
165
152
140
128
116
105
93
83
72
63
57
50
45
41
39
39
40
43
48
53
61
68
78
89
100
112
125
136
148
160
171
182
191
199
205
211
215
218
219
218
216
212
207
200
192
183
173
161
149
137
126
113
101
89
78
69
60
53
47
43
40
38
39
40
44
48
55
62
71
81
92
104
116
128
141
153
165
176
186
194
202
208
213
217
218
219
217
214
210
203
196
188
179
169
157
145
133
122
110
98
86
75
66
60
51
45
42
39
39
39
41
46
52
58
66
75
85
97
108
120
131
144
155
167
178
188
195
203
209
214
217
219
219
217
213
208
202
194
186
176
166
153
139
130
118
104
94
83
73
63
56
50
45
40
38
38
39
42
47
53
60
68
78
89
100
113
125
137
148
161
172
182
192
198
206
211
216
218
219
219
217
212
207
200
192
184
173
161
149
137
125
113
100
89
78
69
61
53
47
43
40
38
39
40
45
49
55
63
71
80
92
104
116
128
140
152
165
175
186
194
201
208
213
216
218
219
217
214
210
204
197
189
179
169
158
146
133
122
110
97
86
75
66
58
51
45
41
39
38
39
41
46
51
58
65
75
85
96
108
120
131
144
156
168
179
188
196
204
210
214
218
219
218
217
213
208
201
194
186
176
165
153
141
129
118
106
94
82
72
63
56
49
44
40
38
38
39
42
47
53
60
68
78
88
100
112
124
136
148
159
171
182
192
199
206
211
216
218
219
218
216
212
207
200
192
183
173
162
149
137
125
113
101
89
79
69
61
53
47
43
40
38
38
40
44
50
56
63
71
81
93
104
116
127
140
152
164
175
185
193
201
208
212
216
218
219
217
214
209
204
196
189
179
169
157
146
133
122
109
97
86
76
66
58
50
45
42
39
38
38
41
46
51
58
65
75
85
96
108
120
131
144
156
167
179
188
196
203
209
214
217
219
218
216
212
208
201
193
186
176
165
154
142
130
119
107
94
83
73
63
56
50
44
41
38
38
39
42
47
53
60
68
78
89
100
112
124
135
147
159
170
181
191
198
205
211
216
218
219
218
216
212
206
199
192
183
173
161
149
136
125
113
101
89
79
69
61
54
47
42
39
38
38
41
43
49
55
63
71
82
93
105
117
128
141
153
164
175
185
193
201
208
212
216
218
219
217
215
210
204
197
189
180
169
158
145
133
121
109
97
86
75
66
58
52
46
42
39
38
39
42
46
51
58
65
74
84
95
107
119
131
143
156
167
178
187
196
203
209
214
217
219
219
217
213
208
202
195
187
176
166
154
142
130
119
106
95
84
73
63
57
49
44
40
38
38
38
38
47
56
63
70
79
86
98
110
121
134
147
158
170
183
192
200
207
213
216
217
218
219
215
209
205
198
191
182
173
162
150
139
127
114
102
91
79
71
62
54
46
39
38
37
38
40
45
49
56
63
72
82
92
104
116
127
140
153
165
175
185
194
202
208
214
217
219
219
218
215
211
204
197
189
179
169
157
145
132
121
108
97
85
75
65
58
51
46
42
39
39
39
42
46
51
58
65
74
84
96
108
120
132
144
156
168
178
188
195
203
209
214
217
219
218
216
213
208
202
195
187
177
166
154
142
130
118
106
94
83
73
63
57
50
45
41
39
38
39
42
47
53
60
67
77
88
100
111
123
135
148
158
170
181
190
197
204
210
215
218
219
218
216
212
207
200
192
184
173
162
150
138
127
115
103
90
79
70
62
54
47
44
39
37
39
41
43
48
56
63
70
80
92
105
116
127
139
151
163
174
185
193
200
208
212
216
218
219
217
215
210
204
198
190
181
170
158
146
133
122
110
99
87
76
67
60
52
46
42
40
38
39
41
45
50
57
64
73
84
94
107
119
131
143
155
166
177
187
195
202
208
214
218
220
218
216
214
210
204
196
187
177
167
155
143
130
118
106
94
82
72
63
56
50
44
41
38
38
39
42
47
52
60
67
77
88
99
112
124
135
147
158
171
182
192
198
205
211
215
218
219
218
216
211
207
200
192
183
173
162
150
138
127
114
102
90
79
69
61
54
47
43
40
38
39
41
45
49
56
63
71
81
92
104
116
127
139
152
163
174
184
192
200
207
212
216
218
219
218
215
210
204
197
190
180
169
158
146
134
123
110
99
87
76
66
59
52
46
42
38
38
38
40
45
50
57
64
74
84
96
107
120
131
143
155
167
178
188
196
203
210
214
218
219
219
218
214
209
202
195
187
177
165
154
141
129
117
105
93
82
72
63
56
50
45
40
38
39
40
42
47
53
61
68
76
88
100
111
123
135
148
159
171
181
191
198
206
211
215
217
219
218
216
212
206
199
192
183
173
162
150
138
126
115
103
90
79
70
62
52
47
43
39
38
38
41
45
49
55
63
72
81
92
104
115
127
139
151
163
174
184
192
201
207
212
217
219
220
218
215
210
204
197
189
180
169
157
146
134
122
110
98
86
76
66
59
51
45
41
38
37
38
41
45
51
58
65
74
85
97
108
120
132
143
155
166
177
187
195
203
209
214
217
219
219
217
214
209
202
195
187
176
165
154
142
129
118
105
94
83
73
63
57
50
44
41
38
37
39
42
46
53
60
67
77
88
99
111
124
135
147
159
171
181
192
198
205
211
216
218
219
219
216
212
208
200
192
184
173
162
150
138
126
113
101
90
79
68
61
53
47
43
39
38
38
40
44
49
56
63
71
81
92
103
115
127
138
150
163
174
184
192
200
208
213
217
219
220
218
216
210
205
197
190
180
169
158
145
133
121
110
97
86
76
66
59
52
46
41
39
37
38
41
45
50
57
65
74
84
96
108
120
131
143
155
167
178
188
196
203
209
214
217
220
219
218
214
209
202
194
186
176
165
153
141
129
118
105
94
83
73
63
56
49
44
40
38
38
38
42
46
52
60
68
78
88
100
112
124
135
148
159
171
181
190
197
204
210
214
217
219
218
216
212
206
199
192
183
173
162
149
137
126
114
101
89
80
70
63
55
47
44
41
39
39
41
44
49
55
62
70
80
91
102
115
127
139
151
163
174
184
192
200
207
212
216
219
219
218
215
210
205
198
191
181
169
157
145
134
122
110
98
86
76
66
59
51
45
41
39
37
39
41
45
51
57
65
74
84
96
108
120
131
143
155
167
178
188
195
203
209
214
217
219
219
217
213
209
202
194
187
176
165
154
142
129
118
106
94
82
72
63
56
50
45
41
39
38
39
42
47
52
60
68
77
85
99
114
127
138
149
158
169
180
188
196
204
210
214
219
220
219
217
214
208
199
192
184
173
160
148
137
125
113
103
92
80
71
63
55
48
44
39
39
38
39
41
45
53
62
70
81
93
104
116
127
139
151
162
173
184
192
201
208
213
217
219
220
219
217
212
206
198
190
180
170
158
146
134
122
110
98
86
76
66
59
52
46
41
39
38
38
41
45
50
57
65
73
84
95
107
119
130
143
155
166
178
188
196
203
210
214
217
219
219
217
213
208
202
194
186
177
166
154
141
130
119
106
94
84
73
63
57
50
45
40
39
38
39
43
47
53
60
68
77
88
99
111
123
135
146
158
170
180
190
197
205
211
214
217
220
218
215
213
208
200
192
184
174
162
150
138
127
114
102
91
79
69
62
54
48
43
40
38
38
39
43
48
54
62
70
80
91
103
115
127
139
151
164
174
184
192
200
207
212
217
219
219
218
215
210
204
197
190
180
170
158
146
135
123
111
99
87
76
67
59
52
47
42
39
38
39
41
45
50
57
63
73
83
94
106
118
130
142
155
166
177
187
195
202
209
213
217
218
219
217
213
208
202
195
187
177
166
155
142
131
119
106
94
83
73
63
57
50
45
41
39
39
40
43
47
53
60
68
77
88
99
111
123
134
146
158
170
180
190
198
205
211
216
218
219
218
216
212
206
200
192
183
173
162
150
138
127
114
102
91
80
69
61
54
47
43
39
38
38
40
43
49
55
63
71
81
92
104
116
127
139
151
164
174
184
192
200
207
212
216
218
219
218
215
210
204
197
189
180
169
158
146
134
122
110
98
87
76
67
59
52
46
42
39
38
39
41
45
50
57
63
73
84
95
107
120
131
144
155
166
177
188
196
203
209
213
217
219
219
217
213
208
202
195
186
176
166
154
142
130
118
106
94
83
73
63
57
50
44
41
38
38
40
43
46
52
60
68
78
88
99
111
123
135
147
159
170
181
191
199
206
211
215
218
219
218
215
211
206
199
192
183
172
161
150
138
127
115
103
90
80
69
62
54
47
42
39
37
38
41
44
49
56
63
71
81
93
104
116
127
139
151
162
173
183
192
199
206
212
216
218
220
218
216
211
205
198
190
180
169
158
146
134
123
111
99
87
77
68
60
52
46
41
40
37
37
41
44
49
55
63
74
84
94
107
120
131
143
156
167
178
188
196
203
209
214
217
219
219
217
214
208
203
195
188
177
167
155
143
131
119
106
94
83
73
63
56
50
45
41
39
38
39
42
46
52
59
67
77
87
99
111
124
135
147
159
170
181
190
198
205
211
214
217
219
218
216
212
206
199
192
183
173
162
151
138
127
115
102
91
80
69
62
54
48
44
40
38
39
41
44
49
55
63
71
80
92
103
115
127
139
151
163
174
184
192
200
207
212
216
218
219
218
215
211
205
198
190
180
170
158
146
134
123
111
98
87
77
67
59
51
46
41
38
38
38
40
44
50
56
63
73
83
95
107
120
131
143
155
167
178
188
195
202
208
214
217
219
219
217
214
209
203
195
188
178
167
155
143
131
119
106
94
83
72
63
56
49
45
41
38
38
39
43
47
53
60
67
77
87
99
111
124
135
147
159
170
181
190
198
205
210
214
217
218
218
216
211
206
200
192
184
174
163
150
139
127
115
103
91
80
70
62
54
48
43
40
38
38
40
44
48
55
63
71
80
91
103
115
127
138
151
163
174
184
193
201
208
213
217
219
219
218
215
211
205
197
190
180
170
158
146
134
122
110
98
86
76
66
59
51
46
41
38
38
38
41
45
51
58
65
74
84
95
107
120
131
143
155
166
177
187
195
202
209
213
217
218
218
217
214
209
202
195
187
177
166
155
143
130
119
107
95
84
73
65
57
50
45
41
39
39
39
42
47
52
59
66
76
86
98
110
123
134
144
157
172
184
192
199
203
209
214
216
217
217
215
212
208
201
194
187
177
165
151
138
127
115
101
89
79
68
61
54
49
44
41
39
39
40
43
47
55
62
69
79
88
101
114
127
139
152
164
175
185
193
200
208
213
216
217
218
218
216
210
205
198
192
181
171
159
147
134
123
111
99
87
77
67
59
52
46
42
39
38
39
41
45
50
57
63
74
84
95
107
119
130
141
153
165
176
185
194
202
209
213
217
219
219
217
214
209
203
195
188
178
166
155
143
130
119
107
95
84
73
63
57
49
44
42
38
37
39
42
46
52
59
68
77
87
99
111
123
134
147
158
170
181
190
197
205
211
215
218
219
219
216
213
208
201
192
184
174
163
150
138
127
114
102
90
79
69
61
54
47
43
39
38
38
40
44
49
55
63
71
80
91
103
115
127
138
151
163
173
184
192
200
206
212
216
218
219
217
215
210
205
198
190
181
170
159
147
134
123
111
99
87
77
67
59
52
47
42
39
39
39
41
46
51
58
64
73
84
94
107
118
130
142
154
165
177
187
195
202
208
214
217
219
219
217
213
209
203
195
187
177
166
155
143
130
119
107
95
84
74
65
58
51
45
41
39
38
39
42
47
53
60
67
77
87
98
110
122
133
146
157
169
180
189
197
205
211
215
218
220
220
217
213
208
201
193
184
174
163
151
139
127
115
103
91
80
70
62
54
48
43
39
38
38
39
43
47
54
61
70
79
91
103
115
127
138
150
163
174
184
192
200
207
212
216
218
219
218
216
211
205
198
191
181
170
158
147
134
123
111
98
87
76
66
59
52
46
42
39
38
39
41
45
51
58
65
74
84
95
107
119
130
143
154
166
177
187
195
202
209
214
217
219
219
216
213
208
202
195
187
177
166
155
142
131
119
107
95
85
74
65
58
50
45
41
39
38
39
42
46
52
60
67
77
88
99
111
123
134
146
158
169
180
189
197
204
211
215
218
220
219
217
213
208
201
193
185
174
163
151
139
127
115
102
91
80
70
62
55
48
43
40
38
38
39
43
48
54
62
69
80
91
103
115
127
139
152
163
174
184
192
199
206
211
215
218
218
217
214
211
205
198
191
181
171
159
147
134
123
110
98
87
76
67
60
53
47
43
40
39
39
42
47
51
57
63
73
84
94
106
118
129
142
154
166
177
187
195
203
208
213
217
218
218
217
214
209
203
195
188
178
167
155
144
131
119
107
95
84
74
63
56
49
44
41
38
38
39
42
47
52
59
66
76
86
98
110
122
134
145
157
171
181
189
198
206
211
215
218
220
219
216
213
208
201
193
185
174
163
151
139
127
115
103
91
80
70
62
54
48
43
39
38
38
40
43
47
54
62
70
80
90
102
114
127
138
150
162
173
184
192
200
207
212
216
219
219
218
216
210
206
198
191
181
170
158
147
134
123
111
99
88
76
67
59
52
47
42
39
38
39
41
45
50
57
63
73
83
94
106
118
130
142
154
166
177
187
195
202
209
214
217
218
218
217
213
209
203
195
188
178
167
155
143
131
119
107
95
84
73
63
57
50
44
41
39
38
39
42
46
52
59
66
76
87
98
110
122
134
146
158
170
180
190
198
205
211
216
218
220
219
216
212
207
200
192
184
174
163
151
139
127
116
103
91
81
70
62
54
48
43
39
38
38
39
43
48
54
62
70
80
91
103
114
126
138
150
162
173
183
192
200
207
212
216
218
219
218
215
211
205
198
190
181
170
158
147
134
123
111
99
88
77
68
60
53
47
43
39
38
39
40
45
50
57
63
73
83
94
106
118
130
142
154
166
176
186
194
201
209
214
217
219
219
217
214
209
203
195
188
178
167
155
143
131
119
107
95
83
73
63
57
49
45
41
39
38
39
43
46
52
59
67
76
87
98
111
123
134
146
158
170
181
191
197
202
210
218
221
222
220
214
211
206
197
192
183
173
162
152
140
128
116
104
91
79
70
62
53
46
42
39
37
38
42
45
49
56
63
71
80
91
102
116
127
138
148
158
172
182
192
201
208
213
218
220
221
218
214
210
204
197
190
182
170
158
147
136
124
112
101
89
78
68
61
53
47
42
39
38
39
41
45
50
57
63
72
82
93
105
117
129
141
153
165
176
187
194
201
209
213
215
218
219
217
214
210
204
196
188
178
167
155
143
131
120
107
96
84
74
64
57
50
44
40
38
37
38
41
46
52
59
67
77
88
99
111
124
135
148
159
171
181
190
198
204
210
215
219
219
218
216
213
208
200
192
184
174
163
151
139
127
115
103
91
80
70
62
55
47
43
40
38
38
39
44
48
55
62
70
80
90
102
115
127
137
149
161
173
183
192
199
206
211
216
218
219
218
216
211
205
198
192
182
172
161
148
137
125
113
100
89
78
68
60
52
47
42
39
38
38
40
44
49
56
63
73
84
94
106
119
129
142
154
166
176
187
194
202
209
214
217
219
219
218
215
209
203
195
187
177
166
154
142
130
119
107
95
84
74
65
57
51
46
41
39
38
39
42
47
52
60
67
77
87
99
111
123
135
146
159
169
180
189
196
203
210
214
217
219
218
216
213
208
201
193
186
175
164
152
139
127
116
103
91
80
70
62
55
49
43
40
38
39
40
43
48
54
61
69
79
90
102
114
126
138
150
162
174
184
192
200
207
212
216
218
219
218
215
210
205
198
192
182
171
159
148
135
124
111
100
87
77
67
59
52
46
42
39
38
39
41
45
50
56
63
73
84
94
106
119
130
142
154
165
176
186
194
202
209
213
217
219
219
217
214
209
202
195
187
178
167
155
143
131
120
107
95
84
74
63
57
50
45
41
39
38
39
42
47
53
60
67
76
87
99
110
123
134
146
158
170
180
189
197
204
210
215
217
219
219
216
213
207
201
192
184
174
163
151
139
127
116
103
91
80
70
62
54
49
44
40
39
39
41
43
48
54
62
69
79
90
102
114
126
137
150
162
173
184
192
199
206
212
216
218
219
218
215
211
205
198
192
182
171
160
148
135
124
112
99
88
77
67
59
52
46
41
39
37
38
40
44
50
57
63
73
83
94
106
118
129
141
154
165
176
187
194
202
209
214
217
218
218
217
213
209
202
195
187
178
167
156
144
131
120
108
96
85
74
65
58
50
45
41
38
38
39
42
46
52
59
67
76
86
98
110
122
132
145
157
168
179
189
196
204
210
214
218
219
219
217
213
207
200
193
184
173
163
152
139
127
115
103
92
80
71
63
56
48
44
40
38
38
39
43
48
54
62
69
80
91
102
114
126
138
150
162
172
183
192
199
207
211
216
219
219
217
215
213
205
198
192
182
172
159
147
136
124
111
98
87
77
68
60
51
45
42
40
38
39
40
45
50
57
63
72
83
94
106
118
129
141
153
165
176
186
194
202
209
213
217
218
219
217
214
209
203
195
188
178
167
154
143
131
120
108
95
84
74
65
57
50
45
41
39
38
39
42
46
52
59
66
76
87
99
110
122
133
146
158
169
180
189
197
204
210
214
217
218
218
216
212
207
200
193
184
174
163
152
139
127
116
104
92
81
71
62
55
48
43
40
39
38
40
44
49
55
62
70
80
90
102
114
126
137
148
160
172
182
192
199
207
212
217
219
220
219
216
212
206
199
192
181
170
159
147
135
124
111
100
88
78
68
61
53
47
43
39
37
38
40
43
48
55
63
72
83
94
106
118
130
142
154
166
176
186
194
202
208
213
217
219
219
217
215
210
204
196
189
179
168
156
144
131
120
108
96
85
74
65
58
51
45
41
39
38
39
42
46
52
59
66
75
86
98
110
122
133
145
158
169
180
189
197
204
210
215
216
215
218
219
216
211
202
192
184
174
161
150
139
127
116
105
94
83
72
63
56
48
43
41
37
36
39
42
46
53
62
71
80
91
102
114
126
137
150
163
173
182
190
197
206
211
216
220
221
219
217
212
206
198
190
180
169
158
147
135
124
111
100
89
79
68
61
54
47
42
39
38
38
40
44
50
57
63
73
84
94
106
119
130
142
154
166
176
186
194
202
208
212
217
219
219
217
214
209
203
196
188
178
167
155
143
131
119
107
95
84
73
65
58
51
46
42
40
39
40
42
47
52
59
66
75
87
98
110
122
133
146
158
169
180
190
197
204
210
215
217
218
218
216
213
208
201
194
186
175
165
152
140
127
116
104
92
80
70
62
54
48
43
40
38
38
40
43
48
53
61
68
79
90
102
114
126
138
150
162
173
184
192
200
207
212
216
218
219
218
215
210
205
197
190
181
171
159
148
136
124
112
100
88
77
67
60
53
47
43
39
39
39
41
45
50
57
63
73
83
94
105
118
129
141
153
165
176
186
194
202
208
213
217
219
219
218
215
210
204
196
188
178
167
156
144
132
120
107
96
84
74
65
58
50
45
41
39
38
39
42
45
51
58
65
75
86
97
109
122
134
146
157
168
180
190
198
204
210
214
218
219
219
216
213
208
201
194
185
175
164
152
139
127
116
104
92
81
71
63
55
48
43
39
38
38
41
44
48
54
61
69
79
90
101
113
125
137
149
162
172
183
192
200
206
211
216
218
219
218
215
210
205
198
191
182
171
160
148
136
124
112
100
89
78
68
60
52
46
42
39
37
38
40
44
50
56
63
72
82
93
105
117
129
141
153
165
176
186
194
202
209
214
217
219
219
218
215
210
203
195
187
177
167
155
144
131
121
108
97
85
75
65
58
50
45
41
38
38
38
41
45
51
59
66
76
86
98
110
122
133
145
157
169
180
189
197
204
210
215
218
219
219
217
213
208
201
193
185
175
164
151
139
127
116
104
92
81
72
63
56
49
44
40
38
38
39
43
47
54
62
69
79
90
102
114
126
137
150
161
172
182
192
199
206
211
215
218
219
218
215
211
206
199
192
182
171
160
148
135
124
111
100
88
78
67
60
53
47
42
39
38
38
41
44
50
56
63
73
83
94
106
119
130
142
154
166
177
187
195
202
209
213
218
219
219
217
214
209
203
195
187
178
166
155
144
131
120
108
96
85
74
65
58
51
45
41
38
37
39
41
45
51
59
66
76
87
99
111
122
134
146
157
169
180
189
197
204
210
215
217
219
218
216
213
208
202
194
185
175
164
152
140
127
116
103
92
81
71
63
55
49
44
41
39
39
39
43
47
54
60
69
79
89
101
113
125
136
148
159
171
182
192
198
206
211
216
218
219
218
216
212
207
199
192
183
172
160
148
136
124
112
99
88
78
68
61
53
46
43
39
38
39
40
44
49
56
63
72
82
93
105
118
129
142
154
165
176
187
194
202
208
214
217
219
219
217
214
210
203
196
189
179
168
156
144
132
120
107
96
85
73
64
57
50
45
40
39
39
39
42
47
52
59
67
76
86
97
109
121
133
145
157
169
179
189
196
204
209
214
218
219
219
217
213
208
201
193
185
175
164
152
140
128
117
105
93
82
72
63
56
49
43
40
38
38
39
42
47
53
61
68
78
89
101
113
125
136
148
161
172
183
192
199
207
212
216
218
219
218
216
212
206
198
192
182
173
161
147
135
124
112
100
88
77
67
60
53
47
42
40
38
39
41
44
50
56
63
72
82
93
106
117
129
141
153
165
176
186
193
201
208
214
217
217
217
217
215
210
203
196
189
179
168
156
144
131
120
108
95
84
73
64
57
50
45
41
39
39
39
42
46
52
59
66
75
86
97
109
122
133
145
157
169
179
189
197
204
210
214
218
219
219
216
213
206
197
194
189
179
167
153
139
127
115
101
91
80
69
62
56
50
44
41
39
38
39
43
48
52
59
68
78
89
101
114
126
137
150
161
173
182
192
200
208
210
215
216
216
218
216
212
208
200
192
184
172
161
148
135
124
111
100
89
79
69
61
54
48
44
41
39
39
40
44
48
55
63
72
82
93
105
117
128
141
152
164
175
185
193
201
207
212
216
218
219
217
215
210
204
196
188
178
168
156
144
132
120
108
96
84
74
65
57
50
45
41
39
38
39
42
46
52
59
66
75
86
97
110
121
133
145
157
169
180
189
197
204
210
215
218
219
219
216
213
208
201
194
185
175
164
152
141
128
117
104
92
81
71
63
54
48
43
40
38
38
40
43
48
54
62
69
79
89
101
113
125
136
148
160
171
182
192
199
206
212
216
218
219
218
216
212
206
198
192
182
172
160
148
136
125
113
101
90
79
69
61
54
47
43
39
38
38
40
44
49
56
63
72
83
94
106
118
129
141
153
164
175
185
193
201
208
213
217
218
219
217
215
210
203
196
188
178
167
155
143
131
120
108
96
85
74
65
58
51
46
42
40
38
39
42
46
52
59
66
76
86
98
109
121
133
145
157
169
179
189
196
204
210
215
218
219
219
217
214
208
202
194
186
175
164
152
140
127
116
104
92
82
71
63
56
49
44
41
39
38
39
43
47
54
61
69
79
89
101
113
125
137
148
161
172
182
192
199
206
212
216
219
219
219
216
212
206
199
192
183
172
161
149
137
125
113
100
89
78
68
61
53
47
42
39
37
38
39
44
48
56
63
72
82
93
105
117
129
141
153
164
176
186
194
202
209
214
217
220
220
219
215
211
204
197
189
178
168
156
144
131
120
108
96
84
74
65
58
51
46
42
39
38
38
42
46
52
58
65
75
86
98
109
121
132
145
158
169
179
189
197
205
211
215
218
219
219
217
213
208
201
193
185
175
163
152
139
127
115
104
92
83
73
63
56
49
45
41
39
38
39
43
47
53
61
69
79
90
101
114
125
137
149
161
172
182
192
198
205
211
216
218
219
217
216
212
206
199
192
183
173
162
149
137
125
112
100
89
78
68
61
53
47
43
39
39
39
41
44
49
56
63
71
81
92
104
116
128
140
153
164
176
186
194
202
208
214
217
219
219
218
214
209
203
196
188
178
168
156
144
132
121
109
97
86
75
65
58
51
46
41
38
38
39
42
46
52
59
66
76
86
98
110
122
133
145
157
168
179
188
196
203
209
214
217
218
217
216
212
208
200
193
185
175
164
152
139
127
117
105
93
82
72
63
57
50
45
41
39
38
40
43
47
53
60
68
78
88
101
113
125
136
149
161
172
182
192
198
205
211
216
218
219
219
216
212
206
200
192
183
172
161
149
137
125
112
101
89
78
68
60
53
47
42
39
38
38
40
44
49
56
63
71
81
92
104
118
128
141
153
165
176
186
194
201
208
213
217
218
219
217
214
209
204
196
189
180
169
158
145
133
121
109
97
85
74
65
57
50
45
40
39
38
39
42
46
52
59
67
76
85
97
109
120
131
144
157
168
179
189
197
204
210
215
217
219
218
216
212
208
201
193
185
175
164
152
141
128
117
105
93
82
72
63
55
49
44
40
37
38
39
41
48
53
60
69
79
89
101
112
125
136
148
160
171
182
192
200
206
212
216
219
219
219
216
212
207
199
192
183
172
161
149
136
125
113
101
89
79
68
61
53
47
42
39
37
37
40
43
48
56
63
72
82
93
105
117
129
140
153
164
176
186
194
202
208
213
217
219
219
218
215
210
204
196
189
179
168
157
145
132
121
108
97
85
75
66
58
51
46
42
39
39
39
42
46
52
59
66
75
85
97
109
121
132
144
156
168
180
189
196
204
210
214
217
219
219
216
213
208
202
194
186
176
164
150
142
132
121
109
94
80
70
62
53
47
43
39
38
39
40
42
49
55
60
67
79
90
99
111
124
136
147
160
173
183
192
200
207
212
217
220
220
219
214
212
204
196
190
182
172
162
150
137
126
114
101
89
78
67
60
53
47
43
40
38
39
41
45
50
57
63
72
82
92
105
117
130
141
152
164
175
186
193
201
207
212
217
219
219
217
214
209
203
196
188
178
168
156
145
132
121
109
97
86
75
66
59
52
46
42
39
38
39
41
45
51
58
65
75
85
97
109
121
133
145
156
168
179
188
196
204
209
214
217
219
219
217
213
209
202
194
187
176
165
153
141
128
116
104
93
81
71
63
55
49
43
40
38
38
39
42
47
53
61
68
78
89
101
113
125
137
149
161
172
183
192
199
207
212
217
219
219
218
216
211
205
199
192
182
172
161
149
137
125
113
101
89
78
68
60
53
47
42
39
38
39
40
44
49
56
63
72
83
94
106
117
129
141
153
165
175
185
193
201
207
212
216
218
219
217
215
210
204
196
189
179
168
156
144
132
121
109
98
86
75
66
59
51
46
42
39
38
39
41
46
51
58
65
74
85
97
109
121
132
144
157
167
179
188
196
203
209
214
217
220
219
217
214
210
203
195
187
176
165
152
140
127
116
103
91
81
71
63
55
49
44
40
38
38
39
42
47
54
61
68
79
89
101
113
125
137
150
161
173
183
192
199
206
211
215
217
218
217
215
211
205
199
192
182
172
161
150
137
125
113
100
89
78
68
60
53
47
43
40
39
39
42
45
50
56
63
72
81
92
104
116
127
139
151
163
175
185
193
201
208
212
217
218
219
217
215
210
204
197
189
179
169
157
145
133
122
110
97
86
75
66
59
51
45
42
39
38
38
41
46
51
58
65
74
85
96
108
120
132
144
157
168
179
188
196
204
210
215
218
220
219
217
213
208
201
193
185
175
164
152
140
128
116
104
92
81
71
63
56
49
44
41
39
39
39
43
47
53
61
68
78
89
101
113
125
136
148
160
172
182
192
199
206
211
215
218
219
218
215
211
206
199
192
182
172
161
149
137
125
113
100
89
79
68
61
54
47
43
40
38
38
41
44
49
55
63
71
81
92
103
116
127
140
152
164
175
185
193
201
208
213
217
219
219
218
215
210
204
197
189
180
169
157
146
133
122
110
97
85
76
66
58
50
44
40
38
38
38
41
45
51
58
65
74
85
96
108
120
132
144
156
168
178
189
197
204
211
215
218
219
218
216
213
207
201
194
186
175
164
152
141
129
118
106
93
82
73
63
56
50
45
41
39
39
40
43
47
54
61
68
79
89
100
112
124
135
147
159
170
181
191
198
205
211
216
218
219
218
216
212
207
199
192
183
173
161
149
137
125
113
101
90
79
69
61
54
47
42
39
37
38
39
44
48
55
63
71
81
93
105
117
128
140
152
164
176
186
194
202
208
214
217
219
219
218
215
210
204
196
189
179
169
157
145
133
121
109
97
85
75
66
58
51
46
42
39
38
39
42
46
52
59
66
75
86
97
109
121
132
145
156
168
179
188
196
203
210
214
217
218
218
216
212
208
201
194
186
175
165
153
141
129
117
105
93
82
72
63
56
49
45
41
39
38
39
42
47
53
61
69
79
89
101
113
125
136
148
160
171
182
192
200
206
212
217
219
219
219
216
212
205
198
192
182
171
160
149
136
126
113
101
89
78
68
61
53
47
42
39
38
38
40
43
48
55
63
71
82
93
105
117
129
140
151
165
175
184
193
201
208
213
216
219
220
218
215
211
205
197
190
179
168
157
145
132
121
109
97
86
75
66
59
52
45
42
40
37
39
41
45
50
57
65
75
85
97
109
121
132
145
157
168
179
188
196
203
209
214
217
218
218
216
213
208
202
195
186
175
165
153
141
128
116
102
94
84
75
66
57
47
43
40
36
37
39
42
47
55
63
70
79
90
101
112
125
137
147
158
171
181
190
198
206
211
216
219
219
218
216
211
206
200
191
182
169
158
149
137
126
115
103
91
79
69
61
52
46
42
39
38
39
42
45
49
57
63
73
82
93
104
116
127
139
151
163
174
185
193
201
208
212
217
218
219
218
215
210
203
196
189
179
168
157
145
133
122
110
98
86
76
66
58
51
46
41
39
37
38
40
44
50
57
65
74
85
96
108
121
132
144
156
167
178
188
196
203
209
214
217
219
219
217
214
209
203
195
187
176
165
153
141
128
117
105
93
82
71
63
56
49
44
41
39
38
40
43
47
53
61
68
79
89
100
112
125
137
149
160
170
181
192
198
205
210
214
217
218
217
215
211
206
200
192
182
172
161
149
137
126
113
101
90
79
69
61
54
48
43
40
38
39
41
45
49
55
63
71
81
92
103
115
127
140
152
164
175
185
194
202
209
213
217
219
219
218
214
210
203
196
189
179
169
157
145
133
122
109
97
85
75
66
58
51
46
42
39
38
39
41
46
51
58
66
75
86
97
108
120
131
144
155
167
178
188
196
203
209
214
217
218
218
217
213
208
202
194
186
176
165
154
142
129
117
106
93
83
72
63
57
50
44
41
39
38
39
42
47
53
61
68
78
88
100
112
124
136
148
160
171
182
192
198
206
211
216
218
219
219
216
212
207
200
192
183
173
162
149
137
125
113
101
89
79
69
60
53
47
42
39
38
38
40
44
49
56
63
71
81
92
104
117
127
140
152
164
175
186
193
201
208
213
217
218
219
218
214
210
204
197
189
180
169
158
146
134
123
110
98
86
76
66
58
51
46
42
39
38
39
41
45
51
57
65
74
84
96
107
119
130
143
155
167
178
188
196
204
210
215
218
219
219
218
214
209
202
194
186
176
165
153
141
129
118
106
94
83
72
63
56
49
44
40
38
38
39
42
47
53
60
68
78
89
100
112
124
136
147
160
171
181
190
198
206
211
216
218
219
219
217
212
206
199
192
183
172
161
149
137
126
113
102
90
79
69
62
54
47
43
39
38
38
39
43
48
55
63
71
81
92
104
116
128
140
152
164
175
185
192
200
207
212
217
219
219
218
215
211
205
197
189
180
169
157
145
133
121
109
97
86
76
67
59
52
47
42
39
38
39
41
46
50
58
65
74
84
95
108
120
131
144
156
167
178
188
196
203
209
214
217
219
218
217
213
208
202
194
186
176
165
154
141
129
118
105
93
82
72
63
56
49
44
41
39
38
40
43
47
54
61
68
78
89
100
112
124
135
147
159
171
182
192
199
206
211
216
218
219
218
216
212
206
199
192
183
172
161
149
136
125
113
101
90
79
70
62
54
48
43
40
38
38
40
44
49
55
63
71
81
93
104
116
127
140
152
163
174
185
192
200
207
212
216
219
219
218
216
211
205
197
190
181
171
158
145
132
121
110
98
86
75
66
59
51
46
41
39
38
38
40
45
50
57
63
74
84
95
108
120
132
144
156
168
179
188
195
203
210
215
217
218
218
217
214
209
202
193
186
177
166
154
142
129
118
106
93
82
71
63
56
49
44
41
39
39
40
43
47
53
60
68
78
88
100
111
125
136
149
160
171
182
191
198
205
211
214
217
218
217
215
211
205
198
192
182
172
161
149
137
126
113
101
90
79
69
61
54
47
44
40
39
40
42
45
50
56
63
71
81
92
103
115
127
139
151
162
174
185
193
201
208
213
217
219
219
217
214
210
205
198
189
180
170
158
145
134
123
111
98
87
76
67
59
51
46
41
38
37
38
40
45
50
57
64
74
84
96
109
120
132
143
155
168
178
187
195
204
209
214
218
220
218
216
215
209
202
195
187
176
165
153
142
129
117
106
94
83
73
63
53
50
47
44
42
39
38
41
46
51
59
67
77
88
101
113
126
137
149
160
171
182
192
197
203
209
214
216
218
218
216
212
208
200
192
183
173
162
151
137
125
111
99
90
79
70
63
56
49
45
41
39
38
40
43
48
55
63
71
81
91
104
116
128
140
152
164
175
185
194
201
208
213
217
219
219
218
215
211
204
197
190
180
170
158
145
133
122
110
98
86
76
66
59
51
45
40
38
37
38
41
44
51
58
65
74
85
96
108
120
131
144
155
167
178
188
195
203
209
214
217
219
219
217
214
208
202
194
187
176
166
154
142
130
118
106
94
83
73
63
56
50
44
41
38
38
39
42
47
53
60
68
78
88
100
112
124
136
148
160
171
181
192
198
205
211
215
218
219
218
216
212
206
199
192
183
173
162
149
138
126
113
101
89
79
69
61
53
47
42
39
38
38
40
43
49
55
63
71
82
93
105
117
128
140
152
164
175
185
192
201
208
212
216
218
219
217
215
210
204
196
189
180
170
158
146
133
122
110
98
86
75
66
59
52
46
42
39
39
39
41
45
50
57
64
73
83
95
107
119
131
143
155
166
178
188
195
203
210
214
218
219
219
217
214
208
202
195
187
176
166
154
142
129
118
106
94
82
72
63
56
49
44
40
38
38
39
43
47
54
61
69
79
89
100
112
124
135
147
158
170
180
189
197
205
210
215
218
219
218
216
212
207
200
192
183
172
161
149
137
126
114
102
90
80
70
63
55
49
44
40
38
38
40
43
48
55
63
71
81
92
104
116
127
140
152
164
174
184
192
200
207
212
216
218
219
218
216
211
205
198
190
180
170
158
145
133
122
110
97
86
76
66
59
52
46
42
39
38
39
41
45
50
57
63
73
84
95
107
119
132
143
156
167
178
188
196
204
209
214
218
220
219
217
214
209
203
195
187
177
166
154
142
130
118
105
93
82
72
63
56
50
44
41
39
39
40
43
47
54
61
68
78
88
100
111
124
135
147
159
171
181
191
198
205
211
215
218
219
218
216
212
206
200
192
183
172
161
149
137
126
114
102
90
80
69
62
55
48
44
40
38
38
40
44
48
55
63
71
81
92
103
116
127
139
151
163
175
185
193
200
208
213
216
219
220
218
216
211
206
198
190
181
170
158
146
134
122
110
98
86
76
66
59
52
46
42
39
38
38
40
45
50
57
63
73
84
95
108
119
131
143
155
167
178
188
195
203
209
214
217
219
218
217
214
209
203
195
187
177
166
154
143
130
118
106
94
83
73
63
57
50
45
41
39
39
40
43
47
53
60
67
76
87
99
110
123
135
147
158
170
181
191
198
206
212
215
219
219
219
216
212
207
200
192
184
173
162
150
138
126
114
102
90
79
69
61
54
47
43
39
38
38
40
43
48
55
63
71
80
91
103
115
127
140
152
164
175
185
194
201
208
213
217
218
218
217
214
209
204
196
189
180
169
158
146
134
123
110
99
87
76
66
59
52
46
41
39
38
39
42
46
51
58
65
74
84
96
107
119
130
143
154
165
176
187
195
202
208
214
217
218
219
217
214
208
203
195
187
177
166
154
142
130
119
107
95
84
73
63
57
50
45
41
39
38
39
42
47
52
60
67
77
88
99
111
123
135
147
159
171
182
191
199
205
211
216
218
219
218
216
212
206
199
192
183
173
161
149
138
126
114
102
90
79
69
62
54
47
43
39
38
38
40
44
49
56
63
70
81
92
104
115
127
140
151
163
175
185
193
200
207
213
216
218
219
218
215
210
204
197
189
179
169
158
147
134
122
110
98
87
76
65
58
52
46
41
39
38
38
41
45
52
58
64
74
84
96
107
120
130
143
155
167
178
187
196
203
210
214
218
219
219
217
213
209
202
194
186
177
165
154
142
130
118
107
95
83
73
63
56
49
45
39
35
37
43
45
48
53
59
67
77
86
98
111
124
135
148
160
172
182
192
198
205
210
216
217
217
217
215
211
206
201
192
184
174
163
149
137
125
113
105
91
78
67
59
54
49
43
42
41
40
42
45
50
54
62
69
79
90
104
116
127
140
152
164
175
185
193
201
207
212
216
218
218
218
215
211
205
198
192
181
171
158
146
134
122
110
97
86
76
66
59
52
46
42
39
38
38
39
44
50
58
63
73
83
95
108
120
130
142
155
167
177
187
195
202
209
214
217
219
219
218
214
209
203
195
188
177
166
155
143
131
119
107
95
83
74
64
57
49
44
41
39
38
39
42
47
54
61
68
77
88
99
112
124
135
147
158
170
181
190
197
205
210
215
217
218
218
216
212
207
199
192
184
173
162
150
138
127
114
102
91
80
70
62
55
48
44
40
39
39
40
43
48
54
62
70
80
92
103
116
127
140
152
164
174
184
192
200
207
212
216
219
219
219
216
211
206
198
190
181
170
159
146
134
122
110
98
86
75
66
59
52
47
42
39
38
39
41
45
50
57
63
73
84
94
106
119
130
142
155
166
178
188
195
202
208
214
217
219
220
218
214
209
203
195
188
177
166
155
142
130
119
106
94
83
73
63
57
50
45
41
39
39
39
43
47
53
60
67
77
87
100
111
123
135
147
159
170
180
190
197
205
210
214
217
218
218
216
212
207
201
193
185
175
162
151
138
127
115
102
90
79
69
61
54
48
43
40
38
39
41
44
48
55
63
71
81
92
103
115
127
139
151
163
174
184
193
200
207
212
216
218
219
218
215
211
205
198
190
181
170
158
146
134
123
110
98
87
77
67
59
52
47
42
39
38
39
41
45
50
57
63
73
84
95
107
119
130
143
154
166
177
187
195
203
209
214
218
219
219
217
214
209
203
195
187
177
166
154
142
130
118
106
94
83
73
63
57
50
45
41
39
39
39
43
47
53
60
67
77
87
99
111
123
134
146
158
170
181
190
198
205
211
215
218
219
218
216
212
207
200
192
184
174
163
150
139
127
114
102
90
79
69
62
54
48
44
41
39
39
41
44
49
56
63
71
80
92
103
114
127
138
150
162
173
184
193
201
207
212
216
218
218
217
214
210
204
197
189
180
169
157
147
134
123
111
100
89
77
68
60
52
47
42
39
38
39
41
44
49
56
63
73
83
94
107
119
130
143
154
166
177
187
195
203
210
214
219
220
220
218
215
209
203
195
187
177
166
155
143
130
118
107
94
83
72
63
56
49
44
40
38
37
38
42
47
52
60
68
77
88
99
112
124
136
147
159
171
181
191
198
204
210
216
219
220
218
216
212
208
200
192
183
172
162
150
137
125
113
101
90
80
70
62
55
49
44
41
39
39
41
44
48
55
63
70
80
91
103
116
127
138
150
162
174
184
192
200
206
212
215
219
218
218
215
211
205
198
190
181
171
159
147
135
123
111
99
88
76
67
59
52
46
41
38
37
38
40
44
50
57
63
73
83
95
106
119
130
143
155
166
178
187
195
203
210
214
218
219
219
217
214
209
203
195
187
177
166
154
142
130
119
107
95
83
73
63
57
50
45
40
38
38
39
42
47
53
60
68
77
88
99
111
123
134
146
158
169
180
190
197
205
210
215
218
219
218
216
212
207
200
192
184
173
162
150
138
127
115
103
91
80
71
63
55
49
44
41
38
38
40
43
47
54
62
70
80
91
103
114
127
138
150
162
173
184
192
200
207
213
216
218
219
219
216
211
206
199
192
181
171
159
147
134
123
111
98
86
76
67
59
52
46
42
39
38
38
41
45
50
57
63
73
84
95
107
119
131
143
155
166
178
187
195
202
209
213
216
218
218
216
213
209
202
195
187
177
166
154
142
130
119
107
95
83
74
63
57
50
45
42
39
39
40
43
45
51
63
70
80
90
98
109
123
133
145
158
169
180
190
198
206
212
216
219
218
217
216
212
205
198
192
183
173
163
152
139
127
116
103
91
80
69
62
55
47
42
36
36
37
40
44
50
56
63
71
81
92
103
114
126
138
150
163
174
184
193
202
208
213
217
220
220
218
216
210
205
198
190
180
170
158
147
134
123
111
98
87
76
66
59
52
46
41
39
38
38
40
45
51
56
63
73
84
95
107
120
132
143
155
166
177
187
195
202
208
213
216
218
218
217
213
209
203
195
188
178
167
155
143
131
119
107
95
84
73
63
58
50
45
41
39
38
39
42
47
53
59
66
76
86
98
110
122
133
146
158
169
180
190
197
204
210
215
217
218
218
216
212
208
201
193
185
175
164
152
139
127
115
103
91
80
70
62
54
48
43
39
38
38
40
43
48
55
62
70
80
90
102
114
126
138
150
162
174
185
193
201
208
213
217
219
219
218
215
211
205
197
190
181
170
159
147
135
124
111
98
87
77
68
60
52
45
41
40
39
39
41
45
51
58
65
74
84
95
107
118
130
141
153
165
176
186
194
202
208
213
217
219
219
217
214
209
203
196
189
178
167
155
143
131
120
107
94
84
74
63
57
50
45
41
39
38
39
42
46
52
59
67
77
87
99
111
123
134
146
158
169
181
190
198
205
210
215
218
219
218
216
212
208
200
193
184
174
163
151
138
127
114
102
90
79
70
61
54
47
43
40
38
38
40
44
48
55
63
71
80
91
103
115
127
139
151
163
174
184
192
200
208
212
217
219
219
218
214
210
204
197
190
180
170
159
147
135
124
111
99
88
77
67
60
53
46
42
40
38
39
41
45
50
57
63
72
83
94
106
118
129
141
153
165
176
186
194
202
209
214
217
219
219
218
214
209
204
195
188
178
167
156
144
132
120
108
96
85
74
65
57
50
44
40
38
37
38
41
46
52
59
67
77
88
99
111
123
134
146
158
169
180
189
197
205
211
216
219
220
219
218
213
208
201
192
184
173
162
150
137
126
114
102
90
79
70
62
54
48
43
40
38
38
40
44
48
55
63
71
81
92
104
115
127
139
152
163
174
184
192
199
206
212
216
218
219
218
215
211
205
198
190
181
170
159
147
134
123
111
99
88
77
68
61
53
47
43
39
38
38
40
44
49
56
63
72
82
93
106
118
130
142
154
166
177
187
194
202
208
213
217
219
219
217
215
210
204
196
188
178
167
155
143
131
119
107
95
83
73
63
57
50
45
41
39
38
39
42
46
52
59
67
76
87
98
111
122
134
146
158
169
180
190
197
205
211
216
218
219
218
216
212
208
200
192
184
174
163
151
139
127
115
103
91
80
70
62
54
48
43
39
38
38
40
43
48
55
62
70
80
91
103
115
127
138
150
162
172
183
192
199
207
212
216
219
219
219
216
212
206
198
191
181
171
158
147
134
123
111
99
88
77
68
60
53
47
42
39
38
38
41
44
49
56
63
72
82
94
106
119
130
142
155
166
177
187
195
202
208
213
217
218
219
217
214
209
203
196
187
178
166
155
143
130
119
106
94
84
73
63
58
50
45
41
39
38
39
42
46
52
59
66
76
86
97
110
123
134
147
158
169
180
191
199
205
210
215
218
218
218
216
212
207
200
193
185
173
163
151
139
127
115
103
91
80
70
62
54
48
43
39
38
39
41
45
48
53
63
70
80
91
102
114
126
138
150
162
172
184
192
199
207
212
216
219
219
219
215
211
205
198
191
181
171
159
148
136
124
112
100
88
78
67
59
52
46
41
38
37
38
40
44
49
57
63
73
83
94
106
118
129
141
153
165
176
186
194
202
209
214
218
219
219
217
214
209
203
195
187
177
166
155
143
131
120
107
96
84
74
65
58
50
45
41
38
37
39
41
46
52
59
67
77
87
99
110
123
134
146
158
170
180
190
197
203
207
216
221
222
221
216
211
206
199
192
183
173
162
151
139
127
116
104
92
80
69
62
54
46
41
39
38
38
40
44
49
55
62
69
79
90
102
115
127
137
149
158
171
183
192
200
208
213
217
219
220
218
215
210
205
198
192
182
172
161
149
137
125
113
100
88
77
66
58
51
45
40
38
37
39
41
46
51
57
63
73
83
94
106
118
129
140
153
165
176
186
195
202
208
213
217
218
218
217
213
208
202
194
188
177
167
155
143
131
120
108
95
84
74
63
57
50
44
40
38
38
38
42
47
52
60
68
78
88
99
111
123
135
145
157
171
180
189
198
205
211
215
218
220
219
216
212
207
200
192
184
173
162
151
138
127
115
103
91
80
71
62
55
48
43
40
38
38
39
42
47
54
62
70
79
91
102
114
126
138
150
162
173
183
192
200
207
212
217
219
220
219
216
211
205
198
191
181
170
159
147
134
123
111
99
87
76
67
59
52
47
42
39
39
39
41
45
51
57
63
73
84
94
107
119
130
142
154
166
176
187
194
202
208
214
217
219
219
217
214
209
203
195
187
177
167
155
143
131
119
107
95
84
73
64
57
51
45
42
39
38
39
42
47
52
60
67
77
87
98
110
122
133
146
157
168
179
188
196
204
210
214
218
219
218
217
213
208
201
193
185
175
164
152
140
127
116
104
92
82
71
63
56
49
44
40
38
38
39
43
47
53
61
68
78
89
100
113
125
137
149
161
173
183
192
199
206
212
216
219
219
219
216
212
206
198
192
182
172
161
147
135
124
112
100
88
77
67
60
52
46
41
38
37
38
40
44
49
56
63
72
83
94
106
119
130
142
155
166
176
187
194
202
209
214
217
218
218
217
215
210
203
195
188
178
167
154
142
130
118
106
94
83
73
64
57
51
46
41
40
39
41
43
47
53
59
67
76
86
98
110
122
134
145
157
169
179
189
196
203
209
214
217
218
218
216
212
207
201
193
186
175
165
152
140
127
116
104
92
81
71
63
55
48
43
40
38
38
39
44
47
54
61
69
79
90
101
113
125
137
149
162
173
184
192
200
207
212
216
219
219
218
216
211
206
198
192
181
171
159
147
135
123
111
99
88
77
67
60
52
46
42
39
38
38
41
45
50
57
63
72
83
94
106
118
129
141
154
165
176
186
195
202
208
213
217
218
219
217
214
209
202
195
187
177
166
155
143
131
119
107
96
85
75
65
59
51
46
42
39
38
39
42
46
52
58
66
75
86
98
110
122
133
145
158
169
179
189
197
205
211
215
218
219
219
217
213
208
201
193
186
175
164
152
139
127
115
102
90
79
69
61
53
47
43
39
38
38
40
43
48
54
62
69
79
90
102
114
127
139
151
164
174
185
192
200
207
212
215
217
218
217
214
210
204
198
191
181
171
160
148
136
124
112
100
88
77
68
60
53
47
42
39
38
39
41
45
50
57
63
72
82
93
105
117
128
140
153
165
176
187
195
203
209
214
217
219
219
217
214
209
203
195
187
177
167
155
144
131
120
108
97
85
74
64
56
50
44
40
37
38
39
41
46
52
59
66
76
88
98
110
122
134
146
158
169
180
190
197
205
211
216
219
220
219
217
214
208
201
192
184
174
163
150
138
127
114
103
92
81
70
62
55
49
43
39
39
38
39
43
47
54
62
70
80
91
102
115
127
138
150
161
172
183
192
198
205
210
215
218
219
218
216
212
206
199
192
182
171
160
148
136
124
112
100
88
78
68
60
53
47
43
39
38
39
40
44
49
56
63
72
83
93
106
118
129
141
153
165
176
186
194
202
208
213
216
218
218
217
214
209
204
196
188
178
168
156
144
132
120
108
95
84
74
64
57
50
44
40
38
37
38
42
47
52
59
66
76
87
99
110
122
133
146
158
169
180
189
197
205
211
215
218
219
219
216
212
208
200
193
181
172
165
154
142
129
115
102
92
80
70
62
54
48
45
42
39
39
41
44
47
54
62
69
77
88
101
112
124
137
150
161
172
183
192
198
206
211
217
220
219
218
213
210
205
199
192
184
173
161
149
136
124
111
99
87
77
67
61
54
47
43
40
39
39
41
44
50
57
63
72
83
94
106
118
130
142
154
166
176
186
194
201
208
213
216
217
218
217
214
209
204
196
189
178
167
155
143
131
119
107
94
84
74
65
58
51
44
41
38
38
39
41
46
52
59
66
76
86
98
110
122
134
146
158
170
180
190
197
205
211
215
218
219
218
216
213
208
200
194
185
174
163
152
140
127
116
104
92
80
70
62
55
48
44
40
38
38
39
43
47
54
61
69
79
89
102
113
126
137
150
161
173
183
192
199
207
212
216
219
219
218
215
212
205
198
192
182
172
159
148
136
124
111
99
88
77
67
60
52
46
42
39
38
38
41
44
49
56
63
72
83
94
106
118
129
142
154
165
176
186
194
202
209
214
218
220
220
218
216
210
204
196
188
178
167
156
143
131
119
107
94
83
73
63
56
50
45
41
39
38
39
42
46
52
59
66
76
86
98
111
123
134
146
158
170
180
189
197
204
210
214
217
218
218
216
212
207
200
192
185
174
163
152
139
127
116
103
92
81
71
63
56
50
45
41
40
39
40
44
48
54
61
69
79
89
101
113
126
137
150
161
173
183
192
199
206
211
215
218
218
218
215
211
205
198
192
183
172
160
148
136
125
111
100
88
77
67
60
52
46
42
39
38
38
41
45
50
57
63
72
82
93
104
117
128
141
153
166
177
188
195
203
209
215
219
219
219
217
214
208
202
194
187
177
167
156
144
132
121
108
97
85
74
65
57
50
45
41
39
38
39
42
46
52
59
66
76
86
97
108
121
132
144
156
168
179
188
196
204
210
215
218
220
219
217
213
208
201
193
185
175
164
152
141
129
117
105
93
82
72
63
56
48
43
40
37
38
39
43
47
53
61
69
79
90
101
113
125
137
148
160
171
182
192
198
205
211
216
219
219
218
216
212
207
199
192
182
172
161
148
136
124
113
101
89
79
68
61
54
47
43
39
38
38
40
44
49
55
63
71
82
93
105
118
129
141
153
164
176
186
194
201
208
213
217
218
219
217
214
209
204
196
188
179
168
157
145
132
121
109
96
85
74
65
58
51
46
41
39
38
39
42
46
52
58
66
75
85
97
108
121
133
144
157
168
179
189
196
204
210
215
218
219
219
217
212
208
201
193
185
175
164
152
141
128
117
105
93
82
71
63
55
49
43
40
38
38
39
43
47
54
62
69
80
90
102
113
126
137
149
161
173
182
192
199
206
211
216
219
219
218
215
211
206
199
192
181
171
159
148
136
124
112
100
88
78
68
60
53
47
43
39
38
38
40
44
49
56
63
73
83
94
106
118
129
142
154
165
176
186
194
202
208
213
217
219
219
218
214
209
204
196
188
178
168
157
143
131
120
108
96
84
74
65
58
51
45
42
39
38
39
42
46
51
58
66
75
86
97
109
121
133
146
156
168
179
188
195
203
209
214
217
219
219
217
213
208
202
194
186
175
165
152
140
127
116
104
92
81
71
63
55
49
43
40
38
38
39
43
47
53
61
69
79
90
101
113
125
137
149
161
173
183
192
199
206
212
216
218
219
218
216
211
206
199
192
182
172
160
148
136
124
112
100
88
77
68
60
52
46
42
39
38
38
40
44
49
56
63
72
82
94
105
117
129
141
153
165
176
186
194
202
208
213
217
219
219
217
214
210
203
196
188
179
167
156
144
132
121
108
97
85
75
66
59
51
46
42
39
38
38
41
45
51
58
66
75
85
97
109
121
132
144
156
168
179
188
196
203
209
215
218
219
219
217
214
208
202
194
186
176
164
152
140
127
115
103
92
81
71
63
56
49
41
37
41
41
43
45
47
52
60
67
76
88
100
113
125
138
151
162
174
184
192
198
206
211
213
216
218
217
215
212
207
199
192
183
172
161
148
136
124
113
98
88
74
66
60
53
48
45
42
40
41
42
45
49
56
63
71
81
93
106
117
128
141
153
165
176
187
194
201
208
213
216
218
218
217
214
210
204
197
189
180
169
156
145
132
120
108
95
85
74
65
57
49
44
41
39
37
38
41
46
51
59
65
75
85
98
109
121
132
145
157
169
180
189
197
204
211
215
218
219
219
216
213
207
201
194
186
176
164
152
140
129
117
105
93
81
71
63
56
49
44
41
39
39
40
43
48
54
61
69
78
88
100
112
124
136
149
161
172
183
192
199
206
211
215
218
219
219
216
213
207
200
192
183
172
160
148
135
123
111
99
87
77
67
60
52
47
43
41
39
39
41
44
49
55
63
72
82
93
105
117
129
142
154
166
177
188
195
203
208
213
217
218
218
217
214
210
204
196
189
179
168
157
145
132
120
107
96
85
73
63
57
50
44
40
38
39
39
42
47
53
59
67
76
85
97
109
121
132
145
157
169
179
189
197
204
211
215
218
219
218
216
212
207
200
193
185
175
164
153
141
130
118
106
94
83
73
63
55
48
43
39
38
37
39
42
47
54
61
69
79
89
101
113
125
137
149
161
172
183
192
199
207
212
217
219
220
219
216
212
206
199
192
182
171
159
147
135
124
111
100
88
78
68
60
53
47
42
39
37
38
40
44
49
56
63
72
83
93
106
117
128
141
153
165
176
186
194
201
208
213
216
219
219
218
215
210
204
196
189
179
167
156
144
132
121
108
97
85
75
66
58
51
46
42
39
38
39
41
45
51
58
65
75
86
97
109
121
132
145
157
168
179
188
196
203
209
214
217
218
218
216
213
208
202
194
186
176
165
153
141
128
117
105
93
82
72
63
56
49
44
40
38
38
39
43
47
54
61
69
78
90
101
113
126
137
149
161
172
182
192
199
206
211
216
218
218
217
215
211
206
199
192
182
172
161
148
136
124
112
100
89
78
68
61
53
47
42
39
38
38
40
44
49
56
63
72
82
93
105
117
128
140
152
164
176
186
194
201
208
213
217
219
219
218
215
210
204
196
189
178
168
156
144
132
121
109
97
86
75
66
58
51
45
41
39
38
39
41
46
52
59
66
75
86
97
109
121
133
144
156
167
178
188
196
203
209
214
217
219
219
218
214
209
202
194
186
175
164
152
139
128
116
104
92
81
71
63
55
48
43
40
38
38
39
42
47
53
61
68
79
89
101
113
126
138
150
161
172
183
192
200
206
211
215
218
218
218
216
212
206
199
192
183
172
161
148
136
124
112
100
88
78
68
61
54
47
43
39
38
39
41
44
48
55
63
72
82
93
104
117
129
140
153
165
176
185
194
202
208
212
216
218
219
217
214
210
204
196
189
179
168
157
145
133
121
109
97
85
74
66
58
50
45
41
40
38
39
42
46
51
58
66
75
85
96
109
121
132
144
157
167
179
189
196
204
210
215
218
219
219
217
214
208
202
194
186
176
165
153
140
128
116
104
92
82
71
63
55
49
43
40
38
38
40
43
47
53
61
68
79
90
101
113
125
136
148
161
171
182
192
199
206
212
216
218
219
218
215
211
206
199
192
182
172
161
148
136
125
113
101
89
78
68
61
54
47
43
40
39
39
41
45
50
56
63
71
82
93
105
116
128
140
152
164
175
185
194
201
208
212
216
218
218
216
213
209
203
196
189
180
169
157
145
132
121
109
96
84
74
65
59
52
46
43
40
39
40
42
46
51
58
65
74
84
96
108
120
132
144
156
169
179
190
197
205
210
215
218
219
219
217
213
208
201
193
185
175
165
153
141
129
117
105
93
81
71
63
54
48
43
40
38
38
40
43
48
54
62
69
79
89
100
109
124
138
151
164
173
181
190
199
204
210
216
218
219
220
218
213
207
200
192
181
171
161
148
135
124
113
100
89
79
69
61
54
47
42
39
38
37
41
45
48
55
61
70
82
94
106
119
130
142
154
164
175
184
192
200
206
212
217
219
219
218
215
211
204
197
189
179
168
156
144
131
121
109
97
86
76
66
59
52
46
42
39
38
38
40
44
50
57
65
75
85
97
109
121
133
145
157
168
179
189
197
204
210
214
218
219
219
216
213
207
201
193
185
175
164
152
140
128
116
104
93
82
72
63
56
49
44
41
39
38
39
42
47
53
61
69
78
89
101
114
126
137
149
161
172
183
192
198
205
211
215
217
219
218
216
212
206
200
192
183
172
161
149
136
125
112
100
89
78
68
61
53
47
43
40
39
39
41
44
49
56
63
71
81
92
104
116
128
140
152
164
175
185
193
201
208
213
217
219
219
217
214
210
204
195
189
180
170
157
145
133
122
110
98
86
75
66
59
51
45
40
38
37
38
41
45
50
58
66
74
86
98
109
122
133
145
157
168
179
188
196
203
210
215
217
217
218
216
213
208
201
194
186
176
164
153
140
129
117
105
93
82
71
63
56
49
44
41
39
37
39
43
47
52
61
69
78
89
100
114
125
136
148
161
172
182
192
198
205
211
215
218
219
218
216
212
207
199
192
183
172
161
149
137
125
113
101
89
79
69
62
54
48
43
40
39
39
40
44
49
55
63
71
81
92
105
117
128
140
153
164
175
185
192
201
207
212
216
218
219
218
215
211
205
198
190
180
169
157
145
132
121
108
96
85
74
65
57
51
45
41
39
38
39
42
46
51
58
65
75
84
96
108
121
132
145
157
169
179
189
196
204
210
214
218
219
219
217
213
208
201
194
186
176
165
153
141
129
118
105
93
82
71
63
55
49
44
39
38
38
39
43
47
53
61
69
78
89
100
112
124
136
148
160
171
182
192
198
206
211
216
218
219
218
216
211
206
199
192
182
172
161
149
137
125
113
101
89
79
69
61
54
47
43
40
38
38
40
44
49
55
63
71
81
92
105
116
127
140
152
164
174
185
193
200
207
213
216
219
219
218
216
211
205
197
190
180
169
157
145
132
121
109
97
86
75
66
58
51
46
42
39
38
39
41
45
50
58
64
74
84
96
108
120
131
144
156
168
178
188
196
203
210
213
217
219
219
217
213
208
202
195
187
177
165
153
141
129
117
104
93
82
72
63
57
49
45
41
39
38
40
43
47
54
61
69
78
89
100
112
124
136
148
160
171
181
191
198
205
211
214
217
218
218
215
211
206
199
192
183
173
161
149
137
126
113
101
89
78
69
61
53
47
43
39
38
38
41
44
48
55
63
71
81
93
105
117
127
140
153
165
175
186
194
202
208
213
217
219
220
218
215
209
203
196
188
178
168
156
144
133
122
110
98
86
76
66
58
51
46
41
39
38
39
42
46
52
59
66
75
86
97
108
120
132
144
156
167
178
188
196
204
210
214
218
220
219
217
213
208
201
194
186
175
164
152
140
128
117
105
93
83
73
63
56
50
44
41
39
38
39
43
48
54
60
68
78
89
101
112
124
136
148
160
171
181
190
198
206
212
216
218
219
219
216
212
207
200
192
183
173
162
149
137
126
113
101
90
79
70
60
52
47
43
39
38
37
40
44
49
55
63
71
81
92
104
117
128
140
153
165
176
186
194
202
209
214
217
219
220
218
215
210
203
196
189
179
168
157
145
132
121
109
97
86
75
66
58
51
45
41
39
38
39
41
46
51
58
66
75
86
97
109
121
132
144
156
167
179
188
196
203
210
215
217
219
219
217
213
208
202
194
186
176
164
153
141
128
118
106
94
83
73
63
57
49
44
40
38
38
39
42
47
54
61
68
78
89
100
112
124
135
147
159
170
182
190
198
205
212
213
216
222
222
220
215
207
198
192
182
170
160
148
136
126
115
103
90
80
69
60
53
47
42
37
36
36
38
42
48
56
63
72
83
93
105
117
128
141
154
164
175
182
192
200
207
213
218
219
220
219
215
211
203
196
188
179
168
157
145
133
121
110
98
87
76
67
60
52
46
42
39
38
39
42
45
51
58
65
74
84
95
108
119
131
143
156
167
177
188
196
203
209
214
217
219
219
218
214
209
202
195
188
177
166
154
142
130
118
105
93
81
71
63
55
48
43
40
37
38
39
42
47
53
60
68
78
88
100
112
124
135
148
160
172
183
192
200
207
213
217
220
220
219
216
212
206
199
192
182
171
161
149
136
125
113
101
89
79
69
61
53
47
43
40
38
38
41
44
49
56
63
71
82
93
104
117
128
140
152
163
174
184
192
199
207
212
216
218
219
218
215
211
205
197
190
180
169
158
145
133
122
110
98
86
76
66
59
52
46
42
39
38
39
41
45
51
58
65
74
85
96
108
121
132
144
156
168
178
188
195
203
209
214
217
219
218
217
214
208
202
194
187
176
165
153
141
129
117
105
93
82
72
63
56
49
44
41
39
39
40
43
47
52
60
67
77
88
99
112
124
136
148
161
172
183
192
200
207
211
216
219
219
217
216
211
206
199
192
184
173
162
150
138
125
113
101
88
77
68
60
52
46
42
39
38
39
41
45
50
57
63
71
81
91
103
116
127
140
151
164
176
185
193
200
207
213
217
218
218
217
213
210
204
196
188
179
169
157
146
133
122
110
98
87
76
66
58
51
45
42
38
38
39
42
46
52
59
66
75
84
96
108
121
131
143
155
168
179
188
196
203
210
214
218
219
219
217
213
209
202
194
186
175
164
152
140
128
117
105
93
82
72
63
56
49
44
40
38
37
39
42
47
53
60
68
78
89
100
112
125
136
148
160
171
182
192
199
206
211
216
218
220
218
216
212
207
199
192
183
173
161
149
137
125
113
101
89
79
70
62
54
48
44
40
38
39
40
44
49
55
63
71
80
92
103
115
127
139
151
163
174
184
192
200
207
212
216
219
219
218
215
211
204
197
190
180
170
158
146
133
122
109
98
86
76
66
59
52
46
42
39
38
39
41
45
51
58
65
75
85
96
108
120
131
144
155
167
178
188
196
204
210
214
218
219
219
217
214
209
202
194
187
176
165
153
142
130
118
106
94
83
73
63
56
49
44
41
38
38
39
42
46
52
60
67
78
89
100
112
124
135
147
159
171
181
191
198
206
211
215
219
220
219
216
212
208
199
192
183
173
161
149
138
126
114
102
90
80
70
62
54
48
43
40
38
38
39
43
48
55
63
71
82
92
104
117
129
139
152
164
175
184
192
201
208
212
216
218
219
218
215
210
204
197
190
180
169
157
145
133
122
109
98
86
76
67
59
52
46
42
39
38
39
41
45
50
57
64
74
84
96
107
120
131
144
156
167
178
188
196
203
209
214
217
219
219
217
214
209
203
195
187
177
165
154
141
130
118
105
93
82
72
63
56
49
44
41
39
38
39
43
47
53
60
68
78
89
100
112
124
136
148
159
171
181
190
197
205
210
215
217
219
218
216
211
206
199
192
184
173
162
150
138
126
114
103
91
80
70
62
54
48
43
39
38
38
40
44
48
55
63
70
81
92
104
116
127
140
152
164
174
184
192
201
207
213
216
219
219
218
215
210
204
197
190
179
169
157
145
133
122
110
98
86
76
66
59
51
46
42
39
38
38
41
45
50
57
63
74
84
96
108
120
131
143
156
167
178
188
196
203
209
214
217
219
219
217
214
209
203
195
187
177
166
154
141
129
117
105
93
82
73
63
56
49
44
41
39
38
39
42
47
53
61
68
78
89
100
112
124
136
148
159
171
181
191
198
205
210
215
217
219
218
216
212
206
200
193
185
174
161
146
138
129
117
105
91
77
67
61
51
46
42
39
38
40
42
45
50
56
63
70
80
92
102
113
126
138
150
163
175
186
194
202
209
213
216
218
218
218
216
209
204
194
188
180
170
159
148
135
124
111
98
86
74
65
58
50
45
42
40
38
39
42
46
51
58
66
74
84
95
108
119
131
143
155
167
178
188
195
203
209
214
217
219
218
216
213
208
202
195
187
177
167
154
142
129
118
106
94
83
73
63
57
50
44
41
38
38
39
42
47
52
60
67
77
87
99
111
123
134
147
159
170
181
191
198
205
212
216
219
219
219
217
213
208
200
192
184
174
162
150
138
127
115
103
91
79
69
61
53
47
42
39
38
38
40
43
48
55
63
71
81
92
103
115
127
139
151
163
174
184
193
201
208
213
217
219
220
219
216
211
205
197
189
180
169
157
144
132
121
109
97
86
76
66
59
51
46
41
39
38
39
42
46
52
58
66
74
85
96
108
120
131
144
156
167
178
188
195
203
209
214
217
218
218
217
213
208
202
194
186
176
166
154
142
130
119
107
95
84
73
63
57
50
45
41
39
38
40
43
47
53
60
67
77
87
99
111
123
134
147
159
170
181
190
198
205
211
216
219
220
219
217
213
208
200
192
184
173
162
150
138
126
114
102
90
79
69
61
53
47
43
39
38
38
40
44
48
55
63
71
81
92
104
116
127
139
152
164
175
185
193
201
208
213
216
218
219
218
215
210
204
197
190
180
169
158
146
133
122
110
99
87
76
67
60
52
47
42
39
38
39
41
45
51
57
65
74
84
96
107
119
131
143
155
167
177
187
195
202
208
213
217
219
219
217
214
209
202
195
187
177
166
154
142
130
118
106
94
83
73
63
57
50
44
41
38
38
39
42
47
52
59
67
77
88
99
112
124
136
148
160
171
182
192
199
206
211
216
218
219
218
216
211
207
200
192
183
173
162
150
137
125
114
101
90
79
69
62
54
47
43
41
39
39
41
44
49
55
63
70
81
91
103
114
127
140
152
162
174
185
193
200
207
212
216
218
218
218
215
210
205
197
190
180
170
158
147
135
123
111
99
87
76
67
59
52
45
41
39
37
38
41
45
49
56
65
74
85
96
107
120
131
144
155
166
178
188
195
203
209
214
217
219
219
218
214
209
203
195
187
177
165
154
142
129
118
106
94
82
72
63
56
49
44
40
38
38
38
42
47
52
60
68
77
89
101
112
124
136
148
159
170
181
192
198
205
210
215
218
219
219
216
212
207
200
192
184
173
162
150
138
126
115
102
89
79
71
61
54
48
44
40
38
39
41
44
47
54
62
69
80
91
103
115
127
139
152
163
175
185
193
201
208
213
216
218
219
217
215
211
205
197
190
180
170
158
145
133
122
109
97
85
75
65
58
51
46
42
39
38
39
41
46
51
58
65
75
84
96
108
120
131
143
156
168
179
188
197
204
210
214
217
218
218
216
213
208
201
194
186
176
165
153
142
129
118
105
94
82
72
63
55
49
44
41
39
39
40
43
47
54
61
68
77
88
99
111
123
135
147
158
170
180
191
198
205
211
215
218
219
218
216
212
207
200
192
184
174
163
150
138
127
115
103
91
80
69
62
53
47
42
38
37
38
40
44
49
55
63
71
81
92
103
115
127
139
150
163
174
184
192
200
208
213
216
219
220
218
216
211
205
197
190
180
170
158
145
133
122
109
98
86
76
66
59
52
46
42
39
38
39
41
45
51
57
64
74
84
96
108
120
131
144
156
167
178
188
196
203
209
213
217
218
218
217
213
209
202
195
187
177
166
155
142
130
118
106
94
83
73
63
57
50
45
41
39
39
39
42
47
53
59
67
77
88
99
111
123
135
147
158
170
181
191
198
206
211
215
218
219
218
216
212
206
200
192
184
174
162
150
139
127
115
103
91
80
69
61
53
47
43
39
34
38
43
47
52
57
62
70
80
90
102
114
127
138
152
164
174
185
193
201
206
212
217
218
217
217
215
209
204
198
190
180
170
158
146
134
123
110
99
88
76
66
57
51
46
42
40
39
40
42
46
51
58
63
73
84
94
107
120
131
143
155
167
178
188
196
204
209
214
217
219
219
218
214
209
203
195
187
177
166
154
142
130
119
106
94
83
73
63
57
50
45
41
38
38
39
42
46
52
59
67
77
88
99
111
123
134
147
158
170
180
190
198
205
211
215
218
219
219
217
213
208
201
193
184
173
162
150
138
126
113
102
90
80
69
61
55
49
44
40
38
38
41
44
48
55
62
71
80
92
103
115
127
139
152
163
174
184
192
200
207
212
216
218
219
217
215
210
205
198
191
181
171
160
148
135
122
111
99
88
77
68
59
52
47
42
39
38
39
41
45
50
57
63
73
83
94
106
118
130
141
154
166
177
187
195
202
209
214
217
220
219
218
214
210
203
196
188
178
167
155
143
131
119
107
94
83
73
63
56
50
44
40
38
38
38
42
46
52
59
67
76
87
99
111
123
134
147
159
171
182
192
199
206
212
216
219
219
219
217
213
207
200
192
183
173
161
150
137
127
114
103
91
80
70
62
55
48
43
39
38
38
40
43
48
55
63
71
81
92
104
116
127
139
151
163
173
183
192
198
206
211
215
217
218
218
215
211
205
198
192
182
171
159
147
134
123
110
98
87
76
67
59
52
46
42
39
39
39
41
45
50
57
63
73
83
95
107
119
131
143
155
167
177
188
195
203
208
213
217
218
219
217
214
208
203
195
188
178
167
154
143
130
119
106
94
83
72
63
56
49
44
41
39
38
39
43
47
52
59
67
77
87
99
111
123
135
147
159
171
182
192
199
205
212
215
218
218
218
216
212
207
200
192
184
174
163
151
139
127
114
101
91
79
68
61
54
47
43
40
39
39
40
44
49
56
63
71
80
91
103
115
127
138
150
162
173
184
193
200
207
213
216
219
219
218
215
211
205
198
190
181
170
158
146
134
123
110
98
87
76
66
59
51
46
41
38
37
38
40
45
51
58
65
74
84
96
108
120
132
144
155
167
177
187
195
203
209
214
218
219
219
217
214
209
203
195
187
176
166
154
141
131
119
106
94
85
73
63
57
50
44
40
38
38
39
41
47
52
59
67
77
87
98
110
123
134
147
159
171
181
192
198
206
211
215
217
220
218
216
212
208
200
193
185
175
163
150
138
127
114
102
90
79
69
62
54
47
43
40
39
39
41
43
49
55
62
70
80
91
103
115
127
139
151
163
175
185
193
201
208
213
217
219
219
218
215
211
205
197
190
180
170
158
146
134
122
110
98
87
76
66
59
52
46
42
39
38
39
41
45
51
57
65
74
84
95
106
119
130
143
153
164
176
187
196
203
209
214
218
220
220
217
214
209
203
195
187
177
166
155
143
131
119
107
95
84
73
63
57
49
44
40
37
37
39
42
47
52
59
67
77
87
99
111
123
134
146
158
169
180
189
197
204
210
215
218
219
219
216
212
207
199
192
184
173
162
150
138
127
115
103
91
81
71
63
55
49
44
40
38
38
40
43
47
54
62
70
80
91
103
115
127
138
151
162
173
183
192
199
206
211
216
218
218
218
215
211
205
198
191
182
171
159
147
135
124
111
99
87
77
67
60
52
47
42
39
39
38
41
44
50
56
63
73
83
94
106
118
130
142
154
166
177
187
195
203
209
214
218
219
219
217
214
209
203
195
188
177
166
155
143
131
119
107
95
84
74
64
57
50
45
41
39
38
39
42
47
52
60
67
77
87
99
111
122
134
146
158
169
180
189
196
204
210
214
217
219
219
216
212
207
200
192
184
174
163
151
139
127
116
103
91
81
70
62
54
48
43
39
37
38
39
43
48
54
62
70
80
92
104
114
124
139
154
165
177
185
192
198
206
210
215
217
218
218
216
212
206
199
192
181
169
157
147
133
121
110
98
86
77
68
61
54
48
44
39
38
38
39
44
50
55
63
69
81
94
107
121
132
144
156
167
178
187
194
201
208
212
217
219
219
218
214
210
204
197
189
178
166
155
142
130
118
106
94
83
73
63
58
51
46
41
39
39
39
42
46
52
59
66
76
86
98
111
122
134
146
158
169
180
189
197
204
210
214
217
218
218
216
212
208
200
193
185
175
164
151
140
127
115
103
91
80
70
62
55
48
43
40
38
38
40
44
49
55
62
70
80
90
102
114
127
137
149
161
173
184
192
200
207
213
216
219
219
218
216
211
205
198
191
181
171
160
147
135
123
111
99
88
77
67
59
52
46
41
38
37
38
40
45
50
57
64
74
84
95
107
120
131
143
155
166
177
186
194
201
208
213
216
218
218
217
213
208
202
195
187
177
166
154
143
131
119
107
95
84
74
65
58
51
45
42
39
39
40
42
46
52
59
67
76
87
98
110
122
134
146
158
170
180
190
197
204
210
214
217
218
218
216
213
208
201
193
185
175
163
150
138
127
115
103
91
79
70
62
55
47
43
39
39
38
40
43
48
54
62
70
79
90
101
114
126
138
150
162
173
184
192
201
208
213
217
218
219
218
216
211
205
198
190
181
170
159
147
134
123
111
99
87
76
67
59
52
46
42
39
38
39
41
45
51
57
64
73
83
94
106
118
130
142
154
166
177
187
195
202
208
213
216
219
219
217
214
209
203
195
188
178
167
155
143
131
120
107
95
83
73
63
56
49
44
40
38
38
38
42
46
52
59
66
77
87
98
110
122
133
146
158
169
181
191
199
206
212
216
219
220
219
217
213
208
200
192
183
173
161
150
138
127
115
103
92
81
71
63
55
48
43
39
38
37
39
43
47
54
62
71
80
91
104
115
127
139
150
162
173
182
192
199
206
211
216
218
219
218
215
211
205
198
191
181
170
159
147
134
123
111
99
88
77
67
60
52
47
43
39
38
39
40
45
51
56
63
74
84
94
107
118
131
142
153
166
176
187
195
202
208
214
217
218
219
218
214
209
204
196
189
178
167
156
143
131
119
107
95
84
73
63
57
50
44
41
38
38
39
41
45
51
59
66
75
87
99
110
123
135
147
159
